Exchange Server 2016 更新:数据库挂载错误

Exchange Server 2016 更新:数据库挂载错误

我尝试将 Exchange Server 2016 CU 20 升级到 Exchange Server 2016 CU23,并执行第 7 步(共 11 步):邮箱角色:邮箱服务。升级失败,并出现以下错误。

我们还修复了受影响的数据库,并且修复成功。但是仍然看到错误。

我们尝试重新启动服务器,但问题也未能解决。

所讨论的数据库处于健康状态。

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

          $name = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxUniqueName;
          $dispname = [Microsoft.Exchange.Management.RecipientTasks.EnableMailbox]::DiscoveryMailboxDisplayName;
          $dismbx = get-mailbox -Filter {name -eq $name} -IgnoreDefaultScope -resultSize 1;
          if( $dismbx -ne $null)
          {
          $srvname = $dismbx.ServerName;
          if( $dismbx.Database -ne $null -and $RoleFqdnOrName -like "$srvname.*" )
          {
          Write-ExchangeSetupLog -info "Setup DiscoverySearchMailbox Permission.";
          $mountedMdb = get-mailboxdatabase $dismbx.Database -status | where { $_.Mounted -eq $true };
          if( $mountedMdb -eq $null )
          {
          Write-ExchangeSetupLog -info "Mounting database before stamp DiscoverySearchMailbox Permission...";
          mount-database $dismbx.Database;
          }

          $mountedMdb = get-mailboxdatabase $dismbx.Database -status | where { $_.Mounted -eq $true };
          if( $mountedMdb -ne $null )
          {
          $dmRoleGroupGuid = [Microsoft.Exchange.Data.Directory.Management.RoleGroup]::DiscoveryManagement_InitInfo.WellKnownGuid;
          $dmRoleGroup = Get-RoleGroup -Identity $dmRoleGroupGuid -DomainController $RoleDomainController -ErrorAction:SilentlyContinue;
          if( $dmRoleGroup -ne $null )
          {
            trap [Exception]
            {
              Add-MailboxPermission $dismbx -User $dmRoleGroup.Name -AccessRights FullAccess -DomainController $RoleDomainController -ErrorAction SilentlyContinue;
              continue;
            }
            
            Add-MailboxPermission $dismbx -User $dmRoleGroup.Identity -AccessRights FullAccess -DomainController $RoleDomainController -ErrorAction Stop -WarningAction SilentlyContinue;
          }
          }
          }
          }
        " was run: "System.InvalidOperationException: Failed to mount database "env3-ex16-AdminDB". Error: An Active Manager operation failed. Error: The database action failed. Error: Operation failed with message: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
Diagnostic context:
    Lid: 65256  
    Lid: 10722   StoreEc: 0x454     
    Lid: 1494    ---- Remote Context Beg ----
    Lid: 1238    Remote Context Overflow
    Lid: 34760   StoreEc: 0xFFFFFDF0
    Lid: 41344   Guid: fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 35200   dwParam: 0x1700
    Lid: 59596   dwParam: 0x2A034686 Msg: JI20
    Lid: 43212   dwParam: 0x2A034696 Msg: JT05
    Lid: 43212   dwParam: 0x2A034696 Msg: JT08
    Lid: 59596   dwParam: 0x2A034696 Msg: WM19
    Lid: 59596   dwParam: 0x2A034696 Msg: WM20
    Lid: 59596   dwParam: 0x2A034696 Msg: WM21
    Lid: 54472   StoreEc: 0x980     
    Lid: 42184   StoreEc: 0x454     
    Lid: 10786   dwParam: 0x0        Msg: 15.01.2507.006:ENV3-EX16:fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 51578   Guid: fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 1750    ---- Remote Context End ----
    Lid: 1047    StoreEc: 0x454      [Database: env3-ex16-AdminDB, Server: ENV3-EX16.sptestindia.com] ---> Microsoft.Exchange.Cluster.Replay.AmDbActionWrapperException: An Active Manager operation failed. Error: The database action failed. Error: Operation failed with message: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
Diagnostic context:
    Lid: 65256  
    Lid: 10722   StoreEc: 0x454     
    Lid: 1494    ---- Remote Context Beg ----
    Lid: 1238    Remote Context Overflow
    Lid: 34760   StoreEc: 0xFFFFFDF0
    Lid: 41344   Guid: fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 35200   dwParam: 0x1700
    Lid: 59596   dwParam: 0x2A034686 Msg: JI20
    Lid: 43212   dwParam: 0x2A034696 Msg: JT05
    Lid: 43212   dwParam: 0x2A034696 Msg: JT08
    Lid: 59596   dwParam: 0x2A034696 Msg: WM19
    Lid: 59596   dwParam: 0x2A034696 Msg: WM20
    Lid: 59596   dwParam: 0x2A034696 Msg: WM21
    Lid: 54472   StoreEc: 0x980     
    Lid: 42184   StoreEc: 0x454     
    Lid: 10786   dwParam: 0x0        Msg: 15.01.2507.006:ENV3-EX16:fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 51578   Guid: fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 1750    ---- Remote Context End ----
    Lid: 1047    StoreEc: 0x454      [Database: env3-ex16-AdminDB, Server: ENV3-EX16.sptestindia.com] ---> Microsoft.Exchange.Data.Storage.AmOperationFailedException: An Active Manager operation failed. Error: Operation failed with message: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
Diagnostic context:
    Lid: 65256  
    Lid: 10722   StoreEc: 0x454     
    Lid: 1494    ---- Remote Context Beg ----
    Lid: 1238    Remote Context Overflow
    Lid: 34760   StoreEc: 0xFFFFFDF0
    Lid: 41344   Guid: fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 35200   dwParam: 0x1700
    Lid: 59596   dwParam: 0x2A034686 Msg: JI20
    Lid: 43212   dwParam: 0x2A034696 Msg: JT05
    Lid: 43212   dwParam: 0x2A034696 Msg: JT08
    Lid: 59596   dwParam: 0x2A034696 Msg: WM19
    Lid: 59596   dwParam: 0x2A034696 Msg: WM20
    Lid: 59596   dwParam: 0x2A034696 Msg: WM21
    Lid: 54472   StoreEc: 0x980     
    Lid: 42184   StoreEc: 0x454     
    Lid: 10786   dwParam: 0x0        Msg: 15.01.2507.006:ENV3-EX16:fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 51578   Guid: fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 1750    ---- Remote Context End ----
    Lid: 1047    StoreEc: 0x454      [Server: ENV3-EX16.sptestindia.com] ---> Microsoft.Mapi.MapiExceptionDatabaseError: MapiExceptionDatabaseError: Unable to mount database. (hr=0x80004005, ec=1108)
Diagnostic context:
    Lid: 65256  
    Lid: 10722   StoreEc: 0x454     
    Lid: 1494    ---- Remote Context Beg ----
    Lid: 1238    Remote Context Overflow
    Lid: 34760   StoreEc: 0xFFFFFDF0
    Lid: 41344   Guid: fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 35200   dwParam: 0x1700
    Lid: 59596   dwParam: 0x2A034686 Msg: JI20
    Lid: 43212   dwParam: 0x2A034696 Msg: JT05
    Lid: 43212   dwParam: 0x2A034696 Msg: JT08
    Lid: 59596   dwParam: 0x2A034696 Msg: WM19
    Lid: 59596   dwParam: 0x2A034696 Msg: WM20
    Lid: 59596   dwParam: 0x2A034696 Msg: WM21
    Lid: 54472   StoreEc: 0x980     
    Lid: 42184   StoreEc: 0x454     
    Lid: 10786   dwParam: 0x0        Msg: 15.01.2507.006:ENV3-EX16:fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 51578   Guid: fb24818a-4b46-415b-bea4-6a2009cd595c
    Lid: 1750    ---- Remote Context End ----
    Lid: 1047    StoreEc: 0x454     
   at Microsoft.Mapi.MapiExceptionHelper.InternalThrowIfErrorOrWarning(String message, Int32 hresult, Boolean allowWarnings, Int32 ec, DiagnosticContext diagCtx, Exception innerException)
   at Microsoft.Mapi.MapiExceptionHelper.ThrowIfError(String message, Int32 hresult, IExInterface iUnknown, Exception innerException)
   at Microsoft.Mapi.ExRpcAdmin.MountDatabase(Guid guidStorageGroup, Guid guidMdb, Int32 ulFlags)
   at Microsoft.Exchange.Cluster.Replay.StoreRpcController.<>c__DisplayClass19_0.<MountDatabase>b__0()
   at Microsoft.Exchange.Cluster.Shared.SafeRefCountedTimeoutWrapper.<>c__DisplayClass21_0.<ProtectedCallWithTimeout>b__0()
   at Microsoft.Exchange.Data.HA.InvokeWithTimeout.Invoke(Action invokableAction, Action foregroundAction, TimeSpan invokeTimeout, Boolean sendWatsonReportNoThrow, Object cancelEvent)
   at Microsoft.Exchange.Cluster.Shared.SafeRefCountedTimeoutWrapper.ProtectedCallWithTimeout(String operationName, TimeSpan timeout, Action operation)
   at Microsoft.Exchange.Cluster.ActiveManagerServer.AmStoreHelper.Mount(Guid mdbGuid, MountFlags flags)
   at Microsoft.Exchange.Cluster.ActiveManagerServer.ActiveManagerCore.<>c__DisplayClass45_2.<MountDatabaseDirect>b__4()
   at Microsoft.Exchange.Cluster.Replay.FailoverPerformanceTrackerBase`1.RunTimedOperation(TOpCode opCode, Action operation)
   at Microsoft.Exchange.Cluster.ActiveManagerServer.ActiveManagerCore.MountDatabaseDirect(Guid mdbGuid, MountFlags storeFlags, AmMountFlags amMountFlags, AmDbActionCode actionCode)
   at Microsoft.Exchange.Cluster.ActiveManagerServer.AmRpcServer.<>c__DisplayClass19_0.<MountDatabaseDirect>b__0()
   at Microsoft.Exchange.Data.Storage.Cluster.HaRpcExceptionWrapperBase`2.RunRpcServerOperation(String databaseName, RpcServerOperation rpcOperation)
   --- End of inner exception stack trace ---
   at Microsoft.Exchange.Data.Storage.Cluster.HaRpcExceptionWrapperBase`2.ClientRethrowIfFailed(String databaseName, String serverName, RpcErrorExceptionInfo errorInfo)
   at Microsoft.Exchange.Data.Storage.ActiveManager.AmRpcClientHelper.RunRpcOperationWithAuth(AmRpcOperationHint rpcOperationHint, String serverName, String databaseName, NetworkCredential networkCredential, Nullable`1 timeoutMs, InternalRpcOperation rpcOperation)
   at Microsoft.Exchange.Data.Storage.ActiveManager.AmRpcClientHelper.MountDatabaseDirectEx(String serverToRpc, Guid dbGuid, AmMountArg mountArg)
   at Microsoft.Exchange.Cluster.ActiveManagerServer.AmRpcClientWrapper.MountDatabaseDirectEx(String serverToRpc, Guid dbGuid, AmMountArg mountArg)
   at Microsoft.Exchange.Cluster.ActiveManagerServer.AmDbAction.MountDatabaseDirect(AmServerName serverName, AmServerName lastMountedServerName, Guid dbGuid, MountFlags storeFlags, AmMountFlags amFlags, AmDbActionCode actionCode)
   at Microsoft.Exchange.Cluster.ActiveManagerServer.AmDbStandaloneAction.<>c__DisplayClass1_0.<MountInternal>b__0(Object <p0>, EventArgs <p1>)
   at Microsoft.Exchange.Cluster.ActiveManagerServer.AmHelper.HandleKnownExceptions(EventHandler ev)
   --- End of inner exception stack trace ---
   at Microsoft.Exchange.Data.Storage.Cluster.HaRpcExceptionWrapperBase`2.ClientRethrowIfFailed(String databaseName, String serverName, RpcErrorExceptionInfo errorInfo)
   at Microsoft.Exchange.Data.Storage.ActiveManager.AmRpcClientHelper.RunDatabaseRpcWithReferral(AmRpcOperationHint rpcOperationHint, IADDatabase database, String targetServer, InternalRpcOperation rpcOperation)
   at Microsoft.Exchange.Management.SystemConfigurationTasks.MountDatabase.RequestMount(MountFlags storeMountFlags)
   at Microsoft.Exchange.Management.SystemConfigurationTasks.MountDatabase.InternalProcessRecord()
   --- End of inner exception stack trace ---
   at Microsoft.Exchange.Configuration.Tasks.Task.ThrowError(Exception exception, ErrorCategory errorCategory, Object target, String helpUrl)
   at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target)
   at Microsoft.Exchange.Management.SystemConfigurationTasks.MountDatabase.InternalProcessRecord()
   at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
   at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".

答案1

您是否在维护模式下添加 Exchange 服务器?检查本指南

此次更新的前提条件是 Microsoft .NET Framework 4.8,而您说的这个版本已经安装了。

您还需要安装新的 Visual C++ 组件- 查看这个变更日志

您可以在数据库修复后应用此更新,您出现的错误是由于数据库损坏造成的:

无法安装数据库(hr=0x80004005,ec=1108)

由于您遇到的错误是缺少日志文件,Exchange 信息存储无法启动,数据库或日志文件卷上的可用磁盘空间不足,Exchange“异常关闭”错误。您可以使用Eseutil命令修复损坏的数据库。

相关内容