1. Start Windows PowerShell

    Start > search for "PowerShell" > Start Windows PowerShell by clicking on "Run as Administrator".

  2. Connect the Windows PowerShell to Office 365 Exchange Online . Please execute below command in PowerShell.

    $LiveCred = Get-Credential (Supply Exchange Online Admin’s log in credentials in the prompt window)

    Set-ExecutionPolicy Unrestricted (Proceed with Y if prompted)

    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUrihttps://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection

    Import-PSSession $Session

  3. Verify if the old mailbox is in deleted state.

    Get-Mailbox -SoftDeletedMailbox accounts

  4. If the Mailbox is found collect the ExchangeGuid of the deleted Mailbox.

    (Get-Mailbox -SoftDeletedMailbox Deleted_User_Alias@domain.com ).ExchangeGuid

  5. Collect the ExchangeGuid of the Active Mailbox.
  6. Now copy the data from the deleted mailbox to the new Mailbox.
    • New-MailboxRestoreRequest -SourceMailbox "Guid of Deleted Mailbox copied from step 4" -TargetMailbox "Guid of Deleted Mailbox copied from step 5"  -AllowLegacyDNMismatch -verbose
  7. Monitor the same.
    • Get-MailboxRestoreRequest
  8. Once it is completed all the data would be moved to the new one.

Sample with Regular PowerShell

1)  Verify the active Mailbox.

Get-Mailbox ACTIVE_USER_ALIAS | FL  Name,Alias,UserPrincipalName,ExchangeGuid,Guid,EmailAddresses,Database

2)  Verified the same in the soft deleted list.

Get-Mailbox -SoftDeletedMailbox Deleted_User_Alias | FL Name,Alias,UserPrincipalName,ExchangeGuid,Guid,EmailAddresses,Database

3)  Collect the data about the mailboxes.

Active Mailbox.

Get-Mailbox ACTIVE_USER_ALIAS | FL Name,Alias,UserPrincipalName,ExchangeGuid,Guid,EmailAddresses,Database

Name  : ACTIVE_USER_ALIAS

Alias  : ACTIVE_USER_ALIAS

UserPrincipalName : ACTIVE_USER_ALIAS@domain.com

ExchangeGuid  : b09181cd-9183-4036-8946-9339dfa27702

Guid  : 28101858-670e-4b47-aedc-7f9cc583a80dEmailAddresses  : {SIP:ACTIVE_USER_ALIAS@domain.com, SMTP:ACTIVE_USER_ALIAS@domain.com, smtp:ACTIVE_USER_ALIAS@domain.com}

Deleted Mailbox.

Get-Mailbox -SoftDeletedMailbox Deleted_User_Alias | FL

Name,Alias,UserPrincipalName,ExchangeGuid,Guid,EmailAddresses,Database

Name  : Deleted_User_Alias

Alias  : Deleted_User_Alias

UserPrincipalName : Deleted_User_Alias@domain.com

ExchangeGuid  : b4dc2e0c-d2ba-4524-9722-dd279b6c6f61

Guid  : a3d02e59-60fd-4bca-b9ca-609c2f792891

EmailAddresses  : {SIP:ecbb89072dda4219a644fab1b054efa6;Deleted_User_Alias@domain.com}

Creating the Mailbox restore request.

New-MailboxRestoreRequest -SourceMailbox b4dc2e0c-d2ba-4524-9722-dd279b6c6f61 -TargetMailbox b09181cd-9183-4036-8946-9339dfa27702 -AllowLegacyDNMismatch -Verbose

Once Request created successfully confirmed the batch completed successfully.

Get-MailboxRestoreRequest | FL Identity,requestguid,Status


Sample with GUI with the help of ISE PowerShell

  1. Start the “Windows PowerShell ISE”, connect it to Exchange Online and Execute below commands.
  2. This would show the list of SoftDeletedMaiboxes, please select one in question and click OK (@ Bottom). $DeletedMailbox = Get-Mailbox -SoftDeletedMailbox | Select DisplayName,ExchangeGuid,PrimarySmtpAddress,ArchiveStatus,DistinguishedName | Out-GridView -Title " This is the list of SoftDeletedMaiboxes, please select one." -PassThru
  3. Select the Target Mailbox to which the data needs to be moved.
    1. $MergeMailboxTo = Get-Mailbox | Select Name,PrimarySmtpAddress,DistinguishedName | Out-GridView -Title " Select the Target Mailbox to which the data needs to be moved." –PassThru
    2. Run the Merge Command

       New-MailboxRestoreRequest -SourceMailbox $DeletedMailbox.DistinguishedName -TargetMailbox $MergeMailboxTo.PrimarySmtpAddress –AllowLegacyDNMismatch

  4. View the progress
  5. Grab the restore ID for the one you want progress on.
    • $RestoreProgress = Get-MailboxRestoreRequest | Select Name,TargetMailbox,Status,RequestGuid | Out-GridView -Title "Restore Request List" –PassThru 
  6. Get the progress in Percent complete.
    • Get-MailboxRestoreRequestStatistics -Identity $RestoreProgress.RequestGuid | Select Name,StatusDetail,TargetAlias,PercentComplete

从已删除邮箱copy数据到活动邮箱的更多相关文章

  1. Oracle根据时间恢复已删除提交的数据

    Oracle 根据数据库的时间戳恢复已删除提交的数据 1.选择一个时间点查看表中数据是否是自己想要的数据 Select * from 表名 as of timestamp to_timestamp(‘ ...

  2. Oracle恢复已删除数据

    Oracle恢复已删除的数据,主要有两种方法:SCN和时间戳. 一.通过SCN恢复删除且已提交的数据 1.获得当前数据库的scn号 select current_scn from v$database ...

  3. 同一个事务里 查询 已删除可是未提交的数据[bug记录]

    前几天犯了个低级错误.在一个事务方法里老是查询不到某条记录,可是debug卡住时,用db工具查.又能查出值. 经过一番折腾,原来是我在同一个事务里 查询 了已删除可是未提交的数据.当然查询不到了! . ...

  4. sql server 中删除表中数据truncate和delete的区别(转载自.net学习网)

    我们都知道truncate table可以用来删除整个表的内容,它与delete后面不跟where条件的效果是一样.但除此之外,我们还清楚它们之间有其它的区别吗?本章我们将一起讨论truncate与d ...

  5. Oracle使用游标删除所有用户数据表中的所有记录脚本

    应用场景:因为数据库中的数据涉及机密信息,希望一次性能删除掉所有数据,只保留数据表结构,供新项目开发程序用 测试结果:经查询已删除所有数据 存在问题:数据表如果存在外键的话下面脚本可能执行不成功,请自 ...

  6. 错误 C2280 Union : 尝试引用已删除的函数 以及 警告 C4624 “Grade”: 已将析构函数隐式定义为“已删除”的一种解决方法

    Union 是C/C++语言中的一种结构类型,用于定义可共享内存的数据变量的一种方式,初次使用Union联合体时可能会遇到以下问题: 错误 C2280 Union : 尝试引用已删除的函数 警告 C4 ...

  7. SELECT INTO和INSERT INTO SELECT的区别 类似aaa?a=1&b=2&c=3&d=4,如何将问号以后的数据变为键值对 C# 获取一定区间的随即数 0、1两个值除随机数以外的取值方法(0、1两个值被取值的概率相等) C# MD5 加密,解密 C#中DataTable删除多条数据

    SELECT INTO和INSERT INTO SELECT的区别   数据库中的数据复制备份 SELECT INTO: 形式: SELECT value1,value2,value3 INTO Ta ...

  8. 在 Linux 系统下使用 PhotoRec 工具来恢复已删除或丢失的文件

    PhotoRec – Recover Deleted or Lost Files in Linux 在 Linux 系统下使用 PhotoRec 工具来恢复已删除或丢失的文件 当你在系统中有意或无意地 ...

  9. Oracle的闪回特性之恢复truncate删除表的数据

    Oracle的闪回特性之恢复truncate删除表的数据 SQL> show parameter flashback NAME                                 T ...

随机推荐

  1. JS 最简单数组去重

    ,,,,])) // 再把set转变成array console.log(newArr) // [1,2,3,4]

  2. python笔记3——字符串的操作

    #Author:Wildwolf name="my name is wildwolf ," print(name.capitalize()) #首字母大写 print(name.c ...

  3. 使用lua实现99乘法口诀表,就这么简洁

    for i=1,9 do for j=1,i do io.write(j,"*",i,"=",i*j," ") end print() en ...

  4. HTML表格布局

    1         浏览器:接受浏览者的操作,然后帮浏览者去web服务器请求网页内容,然后展现成人人眼能够看得懂的可视化页面的软件. 2         IE是浏览器的一种.<ietest工具& ...

  5. Java的类型强制转换

    不说基本类型,没什么意思. 小括号的类型转换,在引用上,表示我坚定的确信,该未知类型一定是我转的类型,或者是我转的类型的子类. 这个转换逻辑和基本类型是不一致的.它不会进行任何具体的操作,只是一种标识 ...

  6. oracle存储过程调试报错  ORA-0131 Insufficient privileges 处理

    必须使用oracle用户登录oracle@sqlplus system/system123 as sysdba 以SYS用户登录数据库,执行赋权操作: grant  DEBUG CONNECT SES ...

  7. SpringBoot1-创建SpringBoot项目

    Spring Boot这两年的发展迅速,很多公司都在用,社区也越来越活越.本人也是基于此框架开发了几个项目,特和各位广大同行分享一下自己的心得体会. Spring Boot基于约束大于配置,开箱即用, ...

  8. Django_web框架的理解

    web框架的本质 import socket sk = socket.socket() sk.bind(("127.0.0.1", 80)) sk.listen() while T ...

  9. swiper插件使用遇到的一点小问题

    最近做移动端开发 给出的静态页使用了Swiper,用的是4.0.3版本,应该是比较新的. 静态页这种东西,一般就是给你个雏形,设计部虽然使用了这个插件,但毕竟这个活儿毕竟还是得开发人员来干,所以,静态 ...

  10. hbuilder中的wap2app (将M站快速转换成App的开发框架)使用过程有关原生标题的关闭

    首先,我最近在做有关将M站快速转换成App的项目,在网上看了很多,最终结合同学的推荐,我选择了hbuilder,有关于hbuilder的下载还有具体使用方法,官网都有详细的说明,我就不介绍了,我重点介 ...