安装Exchange 2010&2016 共存时FederatedEmail丢失

简介:

Exchange 2016出来好一阵子了,全新安装想必大家都在其他文档里面都见过了,Exchange 2016的架构模式将CAS整合进了MBX角色中,使得安装部署十分的简洁方便,只要做好前期准备,甚至直接NEXT下一步就可以搞定,具体的傻瓜式安装,我在后面的文章中给大家详细展示。

今天给大家带来的是一个问题的拍错,大致环境背景如下:

企业内现在有一台ALL IN ONE的 Exchange 2010的服务器,根据需要,现在想将Exchange 2010升级到2016。这个时候我们第一时间想到的最简单的方式就是在环境内搭建一台 exchange 2016的服务器,与之前的Exchange 2010共存,然后迁移用户邮箱到新服务器,之后卸载老服务器。这种升级办法是微软比较推荐的办法,且升级过程和邮箱迁移过程相对平滑,对用户影响最低。话不多说,我们直接开始。

 

BTW: Exchange 2010和Exchange 2016的共存需求,最关键的一点是Exchange 2010必须升级到SP3,官方文档说的是需要SP3或者更高的汇总补丁,当然我这里的exchange 2010已经是SP3,满足了系统要求的最低要求,当时偷懒,索性我就直接安装2016了。但是悲剧的是我在安装2016的过程中遇到了很多个奇怪的问题,我不确定是不是因为我没有安装最新的汇总11导致的,所以在这里强烈建议大家还是升级到最新的汇总11吧,免得后面出问题。

 

image

安装Exchange 2016的前期准备过程我这里就不写了,后面的文章会很详细的写到。

今天就直接写报错的问题了。

再检查完了先决条件,并开始正常安装的时候,进行到邮箱角色安装时候,悲剧发生了:

image

接下来又查看了系统日志:

 

Log Name: Application

Source: MSExchangeSetup

Date: 2/3/2016 6:37:34 PM

Event ID: 1002

Task Category: Microsoft Exchange Setup

Level: Error

Keywords: Classic

User: N/A

Computer: SRCorpWinMail01.ecwise.local

Description:

Exchange Server component Mailbox role: Transport service failed.

Error: Error:

The following error was generated when "$error.Clear();

if ( ($server -eq $null) -and ($RoleIsDatacenter -ne $true) )

{

Update-RmsSharedIdentity -ServerName $RoleNetBIOSName

}

" was run: "Microsoft.Exchange.Data.DataValidationException: Database is mandatory on UserMailbox.

at Microsoft.Exchange.Data.Directory.ADDataSession.Save(ADObject instanceToSave, IEnumerable`1 properties, Boolean bypassValidation)

at Microsoft.Exchange.Management.Deployment.UpdateRmsSharedIdentity.Link()

at Microsoft.Exchange.Management.Deployment.UpdateRmsSharedIdentity.InternalProcessRecord()

at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__b()

at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".

Event Xml:

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">

<System>

<Provider Name="MSExchangeSetup" />

<EventID Qualifiers="0">1002</EventID>

<Level>2</Level>

<Task>1</Task>

<Keywords>0x80000000000000</Keywords>

<TimeCreated SystemTime="2016-02-04T02:37:34.000000000Z" />

<EventRecordID>1391</EventRecordID>

<Channel>Application</Channel>

<Computer>SRCorpWinMail01.ecwise.local</Computer>

<Security />

</System>

<EventData>

<Data>Mailbox role: Transport service</Data>

<Data>Error:

The following error was generated when "$error.Clear();

if ( ($server -eq $null) -and ($RoleIsDatacenter -ne $true) )

{

Update-RmsSharedIdentity -ServerName $RoleNetBIOSName

}

" was run: "Microsoft.Exchange.Data.DataValidationException: Database is mandatory on UserMailbox.

at Microsoft.Exchange.Data.Directory.ADDataSession.Save(ADObject instanceToSave, IEnumerable`1 properties, Boolean bypassValidation)

at Microsoft.Exchange.Management.Deployment.UpdateRmsSharedIdentity.Link()

at Microsoft.Exchange.Management.Deployment.UpdateRmsSharedIdentity.InternalProcessRecord()

at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__b()

at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".

</Data>

</EventData>

</Event>

 

抓住了关键词“Microsoft.Exchange.Data.DataValidationException: Database is mandatory on UserMailbox”

通过查询KB发现,这个问题是由于同盟邮箱丢失所导致的,系统无法写入相应的配置属性。

在下图中的ADSI编辑器中,我们可以很清楚的看到,同盟邮箱为空值,我们立刻想到只能新建一个该邮箱,尝试继续安装步骤

image

在Exchange 2010的 EPS中,用下列命令来进行创建新的同盟邮箱

New-Mailbox -Arbitration -Name FederatedEmail.4c1f4d8b-8179-4148-93bf-00a95fa1e042 -UserPrincipalName FederatedEmail.4c1f4d8b-8179-4148-93bf-00a95fa1e042@<Default_Accepted_Domain>

image

再次尝试安装程序,顺利通过。

image

下面把我当时查找的KB给大家列出来,供大家参考一下:

https://social.technet.microsoft.com/Forums/exchange/zh-CN/5af966b5-de5d-4e03-bb20-bb6c8a49255b/installing-mailbox-role-fails-database-is-mandatory-on-usermailbox-property-name-database

https://support.microsoft.com/en-us/kb/978776



     本文转自horse87 51CTO博客,原文链接:http://blog.51cto.com/horse87/1741920,如需转载请自行联系原作者


相关文章
|
索引
Erlang Mnesia 数据丢失(并未真正丢失,只是索引丢失)
从 Ejabberd开源项目中了解到了 Mnesia的用法,之后好多长一段时间都用 Mnesia 设计分布式缓存。 前段时间系统上线没有出现问题,过了一段时间发现用户登录出现异常(总结发现都是用户切换网络时候出现)发现用户或设备数据丢失
416 0