Exchange 用户归档邮件导入导出PST操作实例

简介:

             分享一个之前做过的Exchange邮箱数据文件的导入导出操作示例。目录内容如下:

目录

第一步 新建一个Exchange角色组并将其添加到Mailbox Import Export 管理角色中... 4

第二步 创建共享文件夹... 4

第三步 创建单个用户邮件导出请求... 5

第四步 将导出的PST文件导入到用户主邮箱... 6

删除已完成的邮件导入请求... 6

删除已完成的邮件导出请求... 6

批量导出归档邮箱至PST文件... 7

基于数据库批量导出PST. 7

使用CSV文件批量导出PST. 8

批量导入PST文件至用户主邮箱... 9

查看邮箱导入导入请求状态... 10

使用Windows计划任务自动执行脚本... 12

第一步 新建一个Exchange角色组并将其添加到Mailbox Import Export 管理角色中

使用命令创建一个角色组名称为Enterprise Mail Support,并将其赋予Mailbox Import Export角色权限,将exadmin加入到成员中。

New-RoleGroup –Name "Enterprise Mail Support" -Roles "Mailbox Import Export" -Members exadmin -Description "Import Export_Enterprise Support"

clip_image002

删除角色组使用命令:Remove-RoleGroup -Identity "Enterprise Mail Support"

clip_image004

get-RoleGroup -Identity "Enterprise Mail Support"

clip_image006

第二步 创建共享文件夹

若要导出邮箱或存档,必须首先创建网络共享文件夹。您需要向在其中导出或导入邮箱的网络共享授予对“Exchange 受信任子系统”组的读/写权限。如果您不授予此权限,则将收到一条错误消息,表明 Exchange 无法建立与目标邮箱的连接。

clip_image008

第三步 创建单个用户邮件导出请求

通过命令将某个用户的归档邮箱邮件导出到PST文件中。

New-MailboxExportRequest -Mailbox exadmin -IsArchive -FilePath "\\127.0.0.1\PST\exadmin.pst"

clip_image010

clip_image012

第四步 将导出的PST文件导入到用户主邮箱

导入过程中如果没有指定导入的目标文件,默认是导入到用户主邮箱的#Inbox#(收件箱里面),PST文件中收件箱中用户自定义的文件会在主邮箱的收件箱中创建(如果该文件夹不存在的情况下)。如果主邮箱中已经存在该封邮件,导入过程中自动跳过重复的邮件。

clip_image014

clip_image016

删除已完成的邮件导入请求

如果想要删除处于完成状态的邮箱导入请求可以运行如下命令:

Get-MailboxImportRequest –Status Completed | Remove-MailboxImportRequest

删除已完成的邮件导出请求

如果需要删除处于完成状态的邮件导出请求可以运行如下命令:

Get-MailboxExportRequest –Status Completed | Remove-MailboxImportRequest

批量导出归档邮箱至PST文件

基于数据库批量导出PST

使用脚本Export-Mail_DB.ps1,该脚本可以将用户的归档邮箱数据按照数据库批量导出到PST文件中,并将各个PST文件存放在以数据库命名的目录中。

运行脚本需要具体的前提条件:

1、 手动创建共享目录,并赋予Exchange信任子系统具有完全访问权限。

2、 操作账号需要属于"Mailbox Import Export"角色组成员。

脚本内容如下:

##以数据库名称为文件名批量创建目录

foreach ($folder in Get-MailboxDatabase db* ) {mkdir \\localhost\pst\$folder\ }

##按照数据库批量导出邮箱用户归档邮箱中邮件到PST文件中,PST文件以“用户名.pst”格式命名。

foreach ($database in get-mailboxdatabase) {foreach ($Mailbox in Get-Mailbox -Database $database -Archive) {$b=$Mailbox.Alias;New-MailboxExportRequest -Mailbox $a -FilePath "\\localhost\pst\$db\$b.pst" -IsArchive}}

运行脚本如图:

clip_image020

运行结果:

clip_image022

clip_image024

 

使用CSV文件批量导出PST

可以使用脚本Export-Mail_CSV.ps1,该脚本的具体内容就是批量导出CSV文件中的邮箱用户的归档邮件到PST文件中。

使用脚本前需要注意事项:

1、 手动创建共享目录,并赋予Exchange信任子系统具有完全访问权限。

2、 操作账号需要属于"Mailbox Import Export"角色组成员。

在运行脚本前准备好CSV文件(CSV文件可以使用命令get-mailbox -Archive -Database DB01 | ft name,Alias,Sam* > c:\2014.csv来生成文件,然后调整文件格式即可),CSV文件内容格式如下:

示例CSV文件:

image

脚本内容如下:

$mail  = import-csv -path "c:\test01.csv"

##遍历CSV文件内容   
Foreach ($user in $mail)

 

{


$Alias = $user.SamAccountName

 

##批量导出CSV文件中的邮箱账号的归档邮箱数据到共享目录中,并自动创建以用户名命名的PST文件。共享目录的权限需要设置为Exchange信任子系统具有完全访问权限。

New-MailboxExportRequest   -IsArchive -Mailbox $Alias -FilePath "\\127.0.0.1\PST\$Alias.pst"

 


}

clip_image032

批量导入PST文件至用户主邮箱

使用脚本ImportMailbox.ps1将PST文件导入到用户的主邮箱中。脚本自动识别PST文件的文件名并将识别到的文件导入到对应的邮箱账户主邮箱中。

脚本内容如下:

clip_image036

Dir \\localhost\PST\*.pst | %{ New-MailboxImportRequest -Mailbox $_.BaseName -FilePath $_.FullName}

 

运行结果:

image

查看邮箱导入导入请求状态

使用如下命令查看导入请求状态。

Get-MailboxExportRequest | Get-MailboxExportRequestStatistics

clip_image042

clip_image044

Get-MailboxImportRequestStatistics -Identity 'contoso.com/Exchangeuser/test\MailboxImport1' | fl TargetMailboxIdentity,EstimatedTransferSize,EstimatedTransferItemCount,BytesTransferred,ItemsTransferred,PercentComplete

image

使用Windows计划任务自动执行脚本

在“管理工具”中打开“任务计划程序”,如图。

clip_image048

选择“创建任务”,如图。

clip_image050

输入任务名称,如图。

clip_image052

选择“新建触发器”,如图。

clip_image054

设置任务运行时间。如图。

clip_image056

如图操作。

clip_image058

在程序或脚本中输入如下命令:

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noexit -command ". 'C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1'; Connect-ExchangeServer –auto; .'C:\Export-Mailbox_DB.ps1'"

clip_image060

clip_image062

clip_image064



本文转自 jialt 51CTO博客,原文链接:http://blog.51cto.com/jialt/1953360

相关文章
|
数据采集 JSON 数据挖掘
如何利用Python实现高效数据清洗
数据清洗是数据分析过程中不可避免的一步。在大规模数据处理任务中,手动数据清洗会耗费大量时间和资源。本文介绍了如何使用Python编写脚本来自动化数据清洗,以提高数据分析的效率。
443 3
|
监控 网络协议 NoSQL
五分钟带你读懂 TCP全连接队列(图文并茂)
今天有个小伙伴跑过来告诉我有个奇怪的问题需要协助下,问题确实也很奇怪。客户端调用RT比较高并伴随着间歇性异常Connection reset出现,而服务端CPU 、线程栈等看起来貌似都很正常,而且服务端的RT很短
9390 0
五分钟带你读懂 TCP全连接队列(图文并茂)
|
4月前
|
机器学习/深度学习 移动开发 资源调度
基于OCDM雷达系统的离散Fresnel域信道估计——论文阅读
本文研究基于离散Fresnel域信道估计的OCDM雷达系统,提出一种抑制高旁瓣的新方法。通过分析时间与频率偏移在离散Fresnel域的影响,建立联合信道模型,揭示距离-多普勒耦合效应。实验验证了系统在真实场景下的鲁棒性,兼具低峰均比、强抗干扰能力,为6G一体化感知通信提供新思路。
298 1
基于OCDM雷达系统的离散Fresnel域信道估计——论文阅读
|
Kubernetes 持续交付 Docker
利用 Docker 和 Kubernetes 实现微服务部署
【10月更文挑战第2天】利用 Docker 和 Kubernetes 实现微服务部署
|
存储 API Swift
一文秒懂什么是OpenStack?
一文秒懂什么是OpenStack?
1762 0
|
存储 缓存 NoSQL
Redis Quicklist 竟让内存占用狂降50%?
【10月更文挑战第11天】
379 2
|
JavaScript 测试技术 持续交付
使用 GitLab CI/CD 管道自动化部署 Web 应用
【10月更文挑战第2天】使用 GitLab CI/CD 管道自动化部署 Web 应用
666 1
|
机器学习/深度学习 搜索推荐 语音技术
进阶教程:优化语音克隆效果与提升TTS自然度
【10月更文挑战第20天】语音克隆技术和基于文本到语音(Text-to-Speech, TTS)系统的应用已经在诸多领域展现出了巨大的潜力,从智能助手到个性化客服,再到教育和娱乐产业。作为一名在语音技术领域有着多年实践经验的研发人员,我希望通过本文分享一些我个人在优化语音克隆效果与提升TTS自然度方面的经验和见解,帮助那些已经具备了一定基础并希望进一步提升自身技能的同行们。
877 0
|
移动开发 JavaScript 小程序
uView Upload 上传
uView Upload 上传
357 0