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. Java编程思想 - 第11章 持有对象

    · 大量笔记存放在Github Java文件中,请移步查看:https://github.com/iGuure/AndroidCodeHub/tree/master/Java%20pratice/Th ...

  2. pypi镜像源加速第三方库在线安装

    使用pypi镜像源加速第三方库在线安装 用easy_install和pip来安装第三方库很方便 它们的原理其实就是从Python的官方源pypi.python.org/pypi 下载到本地,然后解包安 ...

  3. Scrapy的使用

    建立好项目以后,在项目文件内scrapy会搭好框架,我们只需要按照框架设置. 先定义Item    它是保存爬取到的数据的容器,其使用方法和python的字典类似,并且提供了额外保护机制来避免拼写错误 ...

  4. 3.13 练习题4:邮件发送(smtp)

    3.13 练习题4:邮件发送(smtp) 前言本篇总结了QQ邮箱和163邮箱发送邮件,邮件包含html中文和附件,可以发给多个收件人,专治各种不行,总之看完这篇麻麻再也不用担心我的邮件收不到了.以下代 ...

  5. vue打包上传oss

    今天把vue打包之后上传到oss,遇到了一点问题,现在解决了总结一下心得: OSS (Object Storage Service)名为对象存储,配合cdn使用达到静态文件托管加速,提升网站文件访问速 ...

  6. 二、Windows 下 ShellCode 编写初步

    第二章.Windows 下 ShellCode 编写初步 (一)shellcode 定义:最先的 Shell 指的是人机交互界面,ShellCode 是一组能完成我们想要的功能的机器代码,通常以十六进 ...

  7. 存在一个足够大的二维数组,每个数组中的值都是整数,使用javascript如何实现按每个数组中的平均值,从大到小排序这个二维数组?

    这是牛客网上的一道题~ 题意:对数组排序,顺序是按照数组的平均值,即按照一个元素和平均值相减的绝对值的大小来排序...本例按这个绝对值递增排序 解题思想:先求出这个数组的平均值,如果 a<b,那 ...

  8. Ajax会自动将返回的对象属性首字母转化为小写

    今天在使用Ajax的时候遇到的问题. $.ajax({ type: "post", url: "<%=basePath%>reserd'f'w/liswe'f ...

  9. 前端AES解密

    使用插件Crypto.JS 安装 npm install --save_dev crypto-js // 导入 crypto-js 包 import CryptoJS from 'crypto-js/ ...

  10. idea打开dashboard

    1.编辑workspace.xml文件,搜索 “RunDashboard” 节点 2.在component节点下增加option <option name="configuration ...