Sql-Server-2008
應該為中央管理伺服器打開哪些防火牆埠
在我的環境中,我們目前有一個 MSSQL 安裝,它作為多伺服器代理環境(MSX) 中的主伺服器。由於此伺服器位於受嚴格控制的網路中,因此尚未打開 MSX 功能所需的埠。
如圖所示,當我嘗試將目標 (TSX) 登記到主 (MSX) 時,我收到一個錯誤,即 RFC 伺服器不可用,我也無法將多伺服器作業部署到目標。
我應該請求從目標到主伺服器打開哪些埠,反之亦然?
當您嘗試將目標 (TSX) 登記到主 (MSX) 時,失敗的步驟是“確保 ‘{MSX Server}’ 的代理服務正在執行”。此步驟僅檢查 SQL Server 代理是否在 MSX 伺服器上執行。
您可以改為嘗試使用
msdb.dbo.sp_msx_enlist
(在此處記錄),它在 TSX 上執行以將其加入 MSX。這可能會提供更有用的錯誤消息,甚至可能會成功。如果成功,您可以
msdb.dbo.systargetservers
在 MSX 上查詢以確認伺服器已成功註冊,並且正在輪詢下載指令。接下來,您可以輪詢msdb.dbo.sysdownloadlist
以查看這些指令,並查看 TSX 是否正確使用它們。有一error_message
列應包含下載錯誤。請注意,此處記錄的錯誤取決於 TSX 是否成功連接到 MSX,因此您的 TSX 需要能夠連接到 MSX 的 DB 引擎埠(預設為 1433)才能寫入錯誤消息。
您可能想要打開以下埠:
- “目標”伺服器正在偵聽的 TCP 埠,您可以在目標伺服器上檢查:
select * from sys.dm_tcp_listener_states
- 對於添加,它使用 RPC(遠端過程呼叫):打開埠:TCP 和 UDP:139
- 如果您想使用 SMB 進行備份(可以但不喜歡):TCP 和 UDP:445
- 檢查目標上實例 sql 代理的註冊鍵是否設置為 0 鍵以檢查: HKLM\Software\Microsoft\Microsoft SQL Server\ Your instance\SQLServerAgent\MsxEncryptChannelOptions
- 如果您的目標版本高於 MSX,請在添加之前在主 MSX 上創建目標的服務帳戶使用者。檢查方式:
select * from sys.dm_server_services
在目標伺服器上。授予在主 MSX 上的 MSDB 中找到的服務帳戶角色 memberschip“targetserverrole”。