Exchange Server 2010升级到Exchange Server 2016
Hello各位小伙伴们,失踪人口回归啦~~~这次和大家分享Exchange Server 2010升级到Exchange Server 2016的方法。正式开始前先啰嗦几句,为什么我要写这篇文章呢?一方面有客户有exchange 服务器升级的需求,另一方面,如果客户使用的21V世纪互联运营的Office 365并且邮箱要做混合部署的话,也需要把本地已有的Exchange服务器升级到2013版本或者以上。考虑到这两个方面,我打算为大家分享本地Exchange服务器升级的方法。
准备环境
服务器 |
|
Exchange Server 2010 |
|
Exchange Server 2016 |
|
域控服务器DC |
在进行升级之前,我们需要对目前已有的环境作相应的配置。我们需要配置默认脱机通讯簿,创建用于将Exchange 2010升级到Exchange 2016的管理员帐户。
在域控服务器上,以管理员的身份运行Powershell,依次运行以下命令行来重置授权状态:
- Restart-Service CertSvc
- slmgr -rearm
- slmgr EX2010 -rearm
- slmgr EX2016 -rearm

切换到Exchange 2010 ,以Exchange管理员的身份登录,打开Exchange Management Shell,依次运行以下的命令行:
- Get-OfflineAddressBook
- Get-MailboxDatabase | Format-Table Name, Server, OfflineAddressBook -Auto
- Get-MailboxDatabase | Set-MailboxDatabase -OfflineAddressBook "Default Offline Address Book"
//这条命令将验证EX2010服务器上的每个邮箱数据库都分配了默认脱机通讯簿。 这些步骤将在安装Exchange 2016之前完成。由于我们的主题是升级EX2010到EX2016,所以我提前已经安装好了Exchange 2016。
- Get-MailboxDatabase | Format-Table Name, Server, OfflineAddressBook -Auto

以Exchange管理员的身份登录Exchange 2016。由于此时我们处于EX2010和EX2016共存的状态,管理员帐户不处于Exchange 2016中的数据库中,因此我们必须使用特定的URL,将管理员路由到Exchange 2016管理中心。打开游览器,输入特定的URL,这里我们输入Exchange 2016登录URL https://EX2016/ecp?ExchClientVer=15登录Exchange 2016管理员中心。

在收件人(Recipients)功能下,单击新建用户邮箱,在这里我们的取名为Upgrade Admin。

点击权限(permissions),在角色组下添加我们刚刚创建的用户Upgrade Admin。

创建了新的Exchange管理员账户之后,我们还需要做以下几个准备工作:
- 为新Exchange Server 2016服务器添加和更新内部和外部URL
- 更新Exchange Server 2010 URL
- 为新的Exchange组织申请证书
使用Upgrade Admin登录exchange 2016,点击服务器(Server),选择EX2016,点击编辑。

指定外部主机名称框中,在这里我们统一内外部主机名称均为mail.Contoso.local,指定外部客户端登录组织的验证方式,这里我们选择NTLM,点击Save保存更改。

单击虚拟目录(virtual directories)选项卡,点击配置。输入外部客户端访问服务器使用的域名,这里我们键入mail.Contoso.local,然后单击保存,这将为所有Exchange 2016虚拟目录配置外部URL。

在工具栏上面,筛选服务器为EX2016,系统将列出和EX2016相关的所有目录。

双击owa (Default Web Site),我们发现外部URL已经被配置成为刚刚所设置的URL。

还是在EX2016的环境,我们启动Exchange Management Shell,依次运行以下命令符。
- $HostName = "EX2016"
//根据外部URL上设置的值设置内部URL
- Set-EcpVirtualDirectory "$HostName\ECP (Default Web Site)" -InternalUrl ((Get-EcpVirtualDirectory "$HostName\ECP (Default Web Site)").ExternalUrl)
- Set-WebServicesVirtualDirectory "$HostName\EWS (Default Web Site)" -InternalUrl ((Get-WebServicesVirtualDirectory "$HostName\EWS (Default Web Site)").ExternalUrl)
- Set-ActiveSyncVirtualDirectory "$HostName\Microsoft-Server-ActiveSync (Default Web Site)" -InternalUrl ((Get-ActiveSyncVirtualDirectory "$HostName\Microsoft-Server-ActiveSync (Default Web Site)").ExternalUrl)
- Set-OabVirtualDirectory "$HostName\OAB (Default Web Site)" -InternalUrl ((Get-OabVirtualDirectory "$HostName\OAB (Default Web Site)").ExternalUrl)
- Set-OwaVirtualDirectory "$HostName\OWA (Default Web Site)" -InternalUrl ((Get-OwaVirtualDirectory "$HostName\OWA (Default Web Site)").ExternalUrl)
- Set-PowerShellVirtualDirectory "$HostName\PowerShell (Default Web Site)" -InternalUrl ((Get-PowerShellVirtualDirectory "$HostName\PowerShell (Default Web Site)").ExternalUrl)
//配置OAB
- Get-OfflineAddressBook | Where {$_.ExchangeVersion.ExchangeBuild.Major -Eq 15} | Set-OfflineAddressBook -GlobalWebDistributionEnabled $True -VirtualDirectories $Null

我们运行完了这些命令后,可以返回Exchange 管理员中心,可以看到内外部URL已经设置为一样的值了。

新建(New)一个Exchange证书, 为证书命名,在这里我们命名为Exchange Services ,点击下一步。
确保没有选中"请求通配符证书",然后单击下一步。

选择证书需要安装的组织EX2016,点击下一步。

在证书列表中查看你想要包含的域,单击下一步,进入域编辑器Domain Editor。在"域编辑器"窗口中的"域名"框中,键入你要添加的域,这里我们写如EX2010.Contoso.local,然后单击"确定"。

指定要保存证书的路径。

这里我们省略申请CA证书的步骤。Exchange 服务器可以使用自签名的证书,或者第三方权威机构颁发的证书,这里我们推荐大家申请后者,如果要与Office 365混合部署的话,则需要第三方权威机构颁发的证书。申请好证书后,在状态栏点击完成(Complete)导入证书。

在Exchange证书界面,导入我们刚刚申请好的证书,点击确认。双击进入exchange service,你可以查看证书相关信息。

点击"services"服务,勾选SMTPandIIS,点击保存。

准备服务切换
做完了以上准备工作之后,我们开始切换服务。我们将更新Exchange 2010和Exchange 2016服务器的服务连接点(service connection points),更新DNS 记录,将DNS记录指向Exchange Server 2016,并验证组织内部的邮件流。我们将配置运行在新的Exchange server 2016上的Outlook Anywhere 以及客户端验证(Client Authentication)。
在Exchange 2010环境下,打开Exchange Management Shell,依次运行以下命令符。
//设置Outlook Anywhere 参数
- Set-OutlookAnywhere "EX2010\RPC (Default Web Site)" -ClientAuthenticationMethod Basic -SSLOffloading $False -ExternalHostName mail.Contoso.local -IISAuthenticationMethods NTLM, Basic
//设置Autodiscover内部URI
- Set-ClientAccessServer -Identity EX2010 -AutoDiscoverServiceInternalUri https://autodiscover.Contoso.local/Autodiscover/Autodiscover.xml
//重新设置IIS
- IISReset
在Exchange 2016环境下,打开Exchange Management Shell,依次运行以下命令符。
//设置Autodiscover内部URI
- Set-ClientAccessService -Identity EX2016 -AutoDiscoverServiceInternalUri https://autodiscover.Contoso.local/Autodiscover/Autodiscover.xml
//重新设置IIS
- IISReset
返回域控服务器,打开服务器管理Server Manager console,右上角点击工具(Tools),选择DNS。

在DNS管理员下,点击Forward Lookup Zones,选择Contoso.local。

双击mail。

更新IP地址,这将把来自mail.contoso.local的请求导向Exchange Server 2016。
做完了以上步骤,我们回到EX2010刷新DNS。
打开Exchange Management Shell,输入IPConfig /flushdns

在EX2016也做同样的事情,刷新DNS。打开Exchange Management Shell,输入IPConfig /flushdns

邮箱迁移
打开游览器,输入邮箱登录URL,输入用户名和密码之后,可以看到用户是登录到Exchange 2010的Outlook Web App ,这是因为用户邮箱目前还位于Exchange 2010 邮箱数据库中。我们需要把位于Exchange server2010的邮箱迁移到Exchange 2016。
打开Exchange server 2016 Exchange Management Shell,运行以下命令符,验证邮箱数据库内容索引状态。
- Get-MailboxDatabaseCopyStatus
确保在ContentIndexState列上,状态显示为Healthy。如果显示为Failed或者 Suspended,我们需要运行以下命令符。
- $MDBName = Get-MailboxDatabase -Server EX2016
//停止Exchange搜索服务
- Stop-Service MSExchangeFastSearch
//停止Host Controller Service
- Stop-Service HostControllerService
//创建一个可用于存放索引的位置
- $IndexFolder = Get-ChildItem -Path "C:\Program Files\Microsoft\Exchange Server\V15\Mailbox\$MDBName" | Where-Object {($_.PSIsContainer) -and ($_.Name -like "*.Single")}
//移除索引文件夹
- Remove-Item "C:\Program Files\Microsoft\Exchange Server\V15\Mailbox\$MDBName\$IndexFolder" -Force -Recurse
//重新开启Exchange 搜索服务
- Start-Service MSExchangeFastSearch
//重新开启ost Controller Service
- Start-Service HostControllerService
运行完成之后,我们接着输入以下命令符:
//创建一个新的迁移请求
- New-MoveRequest -Identity Administrator -TargetDatabase (Get-MailboxDatabase -Server EX2016).Name
//验证迁移请求
- Get-MoveRequest
//移除迁移请求
- Get-MoveRequest | Remove-MoveRequest

打开游览器,输入https://mail.Contoso.local/ecp进入Exchange 2016管理中心。以管理员的身份登录,点击迁移(Migration)。在工具栏上,点击New新建一个迁移请求,选择Move to a different database。选择位于Exchange server 2010的用户,点击Add添加。

添加好之后,点击下一步。

为迁移批次命名,选择归档规则以及目标数据库。这里我们选择Exchange server 2016作为我们的目标数据库。

指定迁移完成后,接收迁移报告的对象。

我们可以查看迁移的进度,点击View Details查看详情。


等待迁移完成。

登录原本位于exchange 2010的邮箱SaraD,此时我们可以看到,SaraD的邮箱已经位于Exchange 2016,迁移完成。

Exchange Server 2010升级到Exchange Server 2016的更多相关文章
- Exchange Server 2010升级到Exchange Server 2013概览
- 安装部署及升级到Exchange Server 2010
本文档详细的描述了,如何在Windows Server 2008 R2的环境下安装Exchange Server 2010,包括的内容有: 先检查组织环境: 1.请确保林的功能级别至少为 Wind ...
- Windows Server 2008 R2+SQL Server 2014 R2升级到Windows Server 2016+SQL Server 2016
环境: 操作系统:Windows Server 2008 R2 数据库:SQL Server 2014 因SQL Server 2016可以无域创建AlwaysOn集群,集群只剩下单节点也不会挂掉,故 ...
- SharePoint Server 2010安装图解
SharePoint Server 2010作为MOSS 2007的升级版本,自从2009年底发布Beta版本以来就备受关注,网络上已经出现了很多相关的文章,其中也不乏中文的信息. 最近SharePo ...
- Exchange Server 2010安装
Exchange Server 2010安装 Exchange Server 2010是Microsoft最新的邮件服务器软件,功能比较强大.在此,我们在虚拟机中安装体验一下,主要步骤如下: (1) ...
- Exchange Server 2010/2013架构改变
Exchange Server 2010架构 Exchange Server 2013架构
- Exchange Server 2010邮件策略与遵从性
本文档附带了一个附档,里面详细的描述了如何在Exchange Server 2010中配置如下内容: 1.邮件分类 2.免责申明 3.配置信息隔离墙 4.邮件审核 5.Exchange 2010与AD ...
- 《Exchange Server 2010 SP1/SP2管理实践》——第2章 搭建Exchange实验环境2.1 网络环境规划...
本节书摘来自异步社区<Exchange Server 2010 SP1/SP2管理实践>一书中的第2章,第2.1节,作者: 王淑江 更多章节内容可以访问云栖社区"异步社区&quo ...
- Windows Server 2008 R2 配置Exchange 2010邮件服务器
windows server 服务器系统搭建邮件服务器一般两种情况: 1:Winmail server 软件 2:Exchange 参考教程:http://www.cnblogs.com/zhongw ...
随机推荐
- 尼姆博弈(Nimm's Game)
题型: 有3堆各若干个物品,两个人轮流从某一堆取任意多的物品,规定每次至少取1个,多者不限,最后取光者得胜. 思路 首先自己想一下,就会发现只要最后剩两堆物品一样多(不为零),第三堆为零,那面对这种局 ...
- 微信小程序开发-IP地址查询-例子
微信小程序开发 小程序搜索框 IP地址查询 搜索查询 样例 微信小程序 开发 参考 https://mp.weixin.qq.com/debug/wxadoc/dev/component/ ...
- js中的栈与堆的讲解/基本数据类型与引用类型的讲解
1.栈(stack)和堆(heap) stack为自动分配的内存空间,它由系统自动释放:而heap则是动态分配的内存,大小不定也不会自动释放. 2.基本类型和引用类型 基本类型:存放在栈内存中的简单数 ...
- [CVPR2018] Context-aware Deep Feature Compression for High-speed Visual Tracking
基于内容感知深度特征压缩的高速视觉跟踪 论文下载:http://cn.arxiv.org/abs/1803.10537对于视频这种高维度数据,作者训练了多个自编码器AE来进行数据压缩,至于怎么选择具体 ...
- springaop——AspectJ不可不知的细节
springaop简介 springaop是spring对AOP技术的具体实现,它是spring框架的核心技术.springaop底层使用JDK动态代理或CGLIB动态代理技术实现. 应用场景: 在多 ...
- python九九乘法表
j = 1 while j <= 9: i = 1 while i <= j: print("%d*%d=%d\t" % (i, j, i*j), end=" ...
- SpringBoot开发案例之多任务并行+线程池处理
前言 前几篇文章着重介绍了后端服务数据库和多线程并行处理优化,并示例了改造前后的伪代码逻辑.当然了,优化是无止境的,前人栽树后人乘凉.作为我们开发者来说,既然站在了巨人的肩膀上,就要写出更加优化的程序 ...
- VINS 估计器之检查视差
为什么检查视差 VINS里为了控制优化计算量,在实时情况下,只对当前帧之前某一部分帧进行优化,而不是全部历史帧.局部优化帧的数量就是窗口大小.为了维持窗口大小,需要去除旧的帧添加新的帧,也就是边缘化 ...
- php一句话反弹bash shell
来源:https://www.leavesongs.com/PHP/backshell-via-php.html 用到了,记录一下 $sock = fsockopen($ip, $port); $de ...
- poj 1012——Toseph
提交地址:http://poj.org/problem?id=1012 ...