Linux 上的 MSSQL: SQL Server Service Broker/資料庫鏡像傳輸連接端點發生錯誤

Microsoft.SQLServer.Linux.EventRule.DBEngine.An_error_occurred_in_a_SQL_Server_Service_Broker_Database_Mirroring_transport_connection_endpoint_1_5_Rule (Rule)

SQL Server 使用 Service Broker 及資料庫鏡像端點做為 SQL Server 執行個體的外部通訊。

Knowledge Base article:

摘要

SQL Server 使用 Service Broker 及資料庫鏡像端點做為 SQL Server 執行個體的外部通訊。

端點是一種 SQL Server 物件,能提供 SQL Server 透過網路進行通訊的功能。SQL Server 可利用這些端點,透過網路傳送及接收 SQL Server Service Broker 和資料庫鏡像訊息。

原因

連接端點發生錯誤時,會引發此訊息。此錯誤在 Linux 應用程式記錄檔中會記錄為 MSSQLSERVER 事件識別碼 9642。Linux 記錄檔會記錄包含近方端點角色、遠方端點位址、初始錯誤以及交談狀態的相關資訊。此錯誤由遠方端點中的初始錯誤所造成。此錯誤會記錄為 MSSQLSERVER 事件識別碼 9642。

其狀態定義詳如《SQL Server 線上叢書》中的<sys.conversation_endpoints (Transact-SQL)>所述。

解決方式

從應用程式記錄檔中找到此錯誤,並解決導致錯誤的問題。

外部資源

請參閱《SQL Server 線上叢書》中的<疑難排解路由和訊息傳遞>。

可覆寫的參數

名稱

描述

預設值

已啟用

啟用或停用該工作流程。

間隔 (秒)

每次重複執行工作流程之間的時間間隔 (秒)。

300

優先順序

定義警示優先順序。

1

嚴重性

定義警示嚴重性。

2

同步處理時間

同步處理時間

 

逾時 (秒)

指定流程被關閉及標示為失敗之前,允許執行的時間。

200

資料庫連線的逾時 (秒)

若工作流程無法在指定的期限之內存取資料庫,將會失敗並登錄一則事件。

15

Element properties:

TargetMicrosoft.SQLServer.Linux.DBEngine
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
Linux 上的 MSSQL: SQL Server Service Broker/資料庫鏡像傳輸連接端點發生錯誤
{0}
CommentMom2017ID='{BB37750F-51FB-4B98-BA14-E1765CE2C790}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.SQLServer.Linux.DataSource.EventCollectionFiltered Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.Linux.EventRule.DBEngine.An_error_occurred_in_a_SQL_Server_Service_Broker_Database_Mirroring_transport_connection_endpoint_1_5_Rule" Target="SqlDiscL!Microsoft.SQLServer.Linux.DBEngine" Enabled="true" ConfirmDelivery="true" Remotable="true" Comment="Mom2017ID='{BB37750F-51FB-4B98-BA14-E1765CE2C790}';MOM2017GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Microsoft.SQLServer.Linux.DataSource.EventCollectionFiltered">
<MachineName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</MachineName>
<NetbiosComputerName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/NetbiosComputerName$</NetbiosComputerName>
<InstanceName>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</InstanceName>
<ConnectionString>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/ConnectionString$</ConnectionString>
<InstanceVersion>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Version$</InstanceVersion>
<InstanceEdition>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/Edition$</InstanceEdition>
<SqlExecTimeoutSeconds>60</SqlExecTimeoutSeconds>
<SqlTimeoutSeconds>15</SqlTimeoutSeconds>
<TimeoutSeconds>200</TimeoutSeconds>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<EventDisplayNumber>9642</EventDisplayNumber>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.Linux.EventRule.DBEngine.An_error_occurred_in_a_SQL_Server_Service_Broker_Database_Mirroring_transport_connection_endpoint_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/MachineName$</AlertParameter1>
<AlertParameter2>$Target/Property[Type="SqlCoreLib!Microsoft.SQLServer.Core.DBEngine"]/InstanceName$</AlertParameter2>
<AlertParameter3>Event ID: $Data/Property[@Name='EventID']$. $Data/Property[@Name='Message']$</AlertParameter3>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>