gặp sự cố khi di chuyển hộp thư Exchange 2013 sang Exchange 2019. Bất cứ khi nào hộp thư ở trong các bước cuối cùng của quá trình di chuyển, nó sẽ gây ra tình trạng ngừng hoạt động của hộp thư mục tiêu (Cơ sở dữ liệu hộp thư 2019). Nhật ký sự kiện trên máy chủ 2019 sáng lên với các lỗi và cảnh báo đi kèm với mỗi sự cố. Sau mỗi sự cố, cơ sở dữ liệu sẽ gắn kết lại và quá trình di chuyển sẽ kết thúc thành công. Tôi đã thực hiện một số nâng cấp lên 2019 trong năm nay nhưng đây là lần đầu tiên tôi nâng cấp 2013 -> 2019. Các lần di chuyển khác (2010 -> 2016 -> 2019) diễn ra suôn sẻ. Đây là mọi thứ tôi đã cố gắng khắc phục.

  1. Đã chuyển các hộp thư trở lại năm 2013. Thực hiện điều này cùng một lúc và gắn lại cơ sở dữ liệu sau mỗi lần gặp sự cố
  2. Đây là các máy ảo, tôi đã xóa 2019 khỏi miền và cài đặt trên một máy chủ mới. Cùng một vấn đề.
  3. Đã cài đặt CU khác của năm 2019 (đang cài đặt CU6, đã chuyển sang CU3). Cùng một vấn đề
  4. Đã cài đặt Exchange 2016 trên một máy ảo mới khác. Chuyển hộp thư sang 2016 hoạt động không có lỗi.
  5. Đã di chuyển từ năm 2016 sang năm 2019, cùng một vấn đề.
  6. Đã di chuyển từ năm 2019 sang năm 2016, cùng một vấn đề.
  7. Được gọi là Microsoft, được trả 500 đô la và không nhận được đâu sau vài giờ. Họ đã giúp mọi thứ trở lại năm 2013 và ổn định ở đó.
  8. Đảm bảo rằng MAPI đã được bật
  9. Đặt URL bên trong và bên ngoài cho MAPI thành giá trị chính xác của chúng
  10. Đã rà soát trình xem sự kiện để tìm bất kỳ tham chiếu nào đến cơ sở dữ liệu bị che khuất và không tìm thấy gì bên ngoài Nhật ký ứng dụng.

Đây là 2 lỗi đã dính với tôi ngay từ đầu. Nguồn: MSExchangeIS Event ID 1002. Tìm kiếm lỗi này trên internet đã giúp tôi gần gũi, nhưng không hoàn toàn chính xác các lỗi được cho là đã được sửa trong các CU cũ hơn.

Unhandled exception (System.InvalidOperationException: Nullable object must have a value. at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource) at Microsoft.Exchange.Protocols.MAPI.MapiMessage.IsStreamSizeInvalid(MapiContext context, Int64 size) at Microsoft.Exchange.Protocols.MAPI.MapiStream.ValidateStreamSize(MapiContext context, Int64 size) at Microsoft.Exchange.Protocols.MAPI.MapiStream.Write(MapiContext context, Byte[] bytesToWrite, Int32 offset, Int32 length) at Microsoft.Exchange.Server.Storage.MapiDisp.RopHandler.WriteStreamExtended(MapiContext context, MapiStream stream, ArraySegment1[] dataChunks, UInt32& outputByteCount, WriteStreamExtendedResultFactory resultFactory) at Microsoft.Exchange.Server.Storage.MapiDisp.RopHandlerBase.WriteStreamExtended(IServerObject serverObject, ArraySegment1[] dataChunks, WriteStreamExtendedResultFactory resultFactory) at Microsoft.Exchange.RpcClientAccess.Parser.RopWriteStreamExtended.InternalExecute(IServerObject serverObject, IRopHandler ropHandler, ArraySegment1 outputBuffer) at Microsoft.Exchange.RpcClientAccess.Parser.InputRop.Execute(IConnectionInformation connection, IRopDriver ropDriver, ServerObjectHandleTable handleTable, ArraySegment1 outputBuffer) at Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.ExecuteRops(List1 inputArraySegmentList, ServerObjectHandleTable serverObjectHandleTable, ArraySegment1 outputBuffer, Int32 outputIndex, Int32 maxOutputSize, Boolean isOutputBufferMaxSize, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut) at Microsoft.Exchange.RpcClientAccess.Parser.RopDriver.ExecuteOrBackoff(IList1 inputBufferArray, ArraySegment1 outputBuffer, Int32& outputSize, AuxiliaryData auxiliaryData, Boolean isFake, Byte[]& fakeOut) at Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.<>c__DisplayClass29_1.b__0(MapiContext operationContext, MapiSession& session, Boolean& deregisterSession, AuxiliaryData auxiliaryData) at Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.Execute(IExecutionDiagnostics executionDiagnostics, MapiContext outerContext, String functionName, Boolean isRpc, IntPtr& contextHandle, Boolean tryLockSession, String userDn, IList1 dataIn, Int32 sizeInMegabytes, ArraySegment1 auxIn, ArraySegment1 auxOut, Int32& sizeAuxOut, ExecuteDelegate executeDelegate) at Microsoft.Exchange.Server.Storage.MapiDisp.MapiRpc.DoRpc(IExecutionDiagnostics executionDiagnostics, IntPtr& contextHandle, IList1 ropInArraySegments, ArraySegment1 ropOut, Int32& sizeRopOut, Boolean internalAccessPrivileges, ArraySegment1 auxIn, ArraySegment1 auxOut, Int32& sizeAuxOut, Boolean fakeRequest, Byte[]& fakeOut) at Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcDoRpc(MapiExecutionDiagnostics executionDiagnostics, IntPtr& sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment1 request, ArraySegment1 auxiliaryIn, IPoolSessionDoRpcCompletion completion) at Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.EcPoolSessionDoRpc_Unwrapped(MapiExecutionDiagnostics executionDiagnostics, IntPtr contextHandle, UInt32 sessionHandle, UInt32 flags, UInt32 maximumResponseSize, ArraySegment1 request, ArraySegment`1 auxiliaryIn, IPoolSessionDoRpcCompletion completion)
at Microsoft.Exchange.Server.Storage.MapiDisp.PoolRpcServer.<>c__DisplayClass48_0.b__0() at Microsoft.Exchange.Common.IL.ILUtil.DoTryFilterCatch[T](Action tryDelegate, GenericFilterDelegate filterDelegate, GenericCatchDelegate catchDelegate, T state)).

Nguồn: MSExchangeIS ID sự kiện 1013

The mailbox with mailbox guid 8f656114-9b45-43ac-8073-8ddd3f7596b8 caused a crash or resource outage on database "Mailbox Database 2" (da3e70b9-c9b1-4937-9fb1-f18324f85926).

Version: 15.02.0464.005 Description: InvalidOperationException: S.ThrowHelper.ThrowInvalidOperationException,MEPMAPI.MapiMessage.IsStreamSizeInvalid,MEPMAPI.MapiStream.ValidateStreamSize,MEPMAPI.MapiStream.Write,MESSMD.RopHandler.WriteStreamExtended,MESSMD.RopHandlerBase.WriteStreamExtended,MERCAP.RopWriteStreamExtende

Về mặt của nó, tôi biết lỗi có nghĩa là gì ... Tôi không biết phải đi đâu để sửa chữa nó. Nếu bạn cần thêm thông tin hoặc nhật ký sự kiện, tôi sẽ cung cấp. Cảm ơn sự giúp đỡ của bạn!

answer

Số bản dựng của Exchange Server 2013 của bạn là bao nhiêu? Dựa trên nghiên cứu của tôi, ID sự kiện MSExchangeIS 1013 dường như do .NET Frameworkphiên bản không được hỗ trợ gây ra , tài liệu chính thức liên quan đến sự kiện 1013 dành cho bạn tham khảo: Hộp thư bị cách ly và cơ sở dữ liệu bị lỗi đột ngột trong Exchange Server 2013 và bạn có thể chạy như sau các lệnh để kiểm tra xem phiên bản .NET Framework hiện tại của Exchange 2013 CU có phải là phiên bản được hỗ trợ / không được hỗ trợ hay không (Đồng thời, bạn cũng có thể kiểm tra phiên bản đó trên Máy chủ Exchange 2019 của mình):

$Reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $Server) $RegKey= $Reg.OpenSubKey("SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full") [int]$NetVersionKey= $RegKey.GetValue("Release") if($NetVersionKey -ge 381029) { "4.6 or later" return } switch ($NetVersionKey) { {($_ -ge 378389) -and ($_ -lt 378675)} {"4.5"} {($_ -ge 378675) -and ($_ -lt 379893)} {"4.5.1"} {$_ -ge 379893} {"4.5.2"} default {"Unable to Determine"} }