Обновление 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команда для восстановления поврежденной базы данных.

Другие вопросы по тегам