适用于:Linux 上的 SQL Server
可以通过 Linux 上的 SQL Server 实例(会侦听使用 network.tcpport mssql-conf 设置配置的任何端口)来配置复制。 如果满足以下条件,则需要在配置过程中将端口追加到服务器名称后:
- 复制设置涉及 Linux 上的 SQL Server 实例
- 任何实例(Windows 或 Linux)正在监听非默认的端口。
可以通过在实例上运行 @@SERVERNAME 来查找实例的服务器名称。 请勿使用 IP 地址而不是服务器名称。 为发布者、分销商或订阅者使用 IP 地址可能会导致错误。
注意
在 Linux 上使用非默认端口创建 SQL Server 复制仅适用于 SQL Server 2019 及更高版本。
示例
Server1 侦听 Linux 上的端口 1500。 要配置 Server1 以进行分发,请搭配 sp_adddistributor 运行 @distributor。 例如:
EXECUTE sp_adddistributor @distributor = 'Server1,1500';
Server1 侦听 Linux 上的端口 1500。 若要为分发服务器配置发布服务器,请搭配 sp_adddistpublisher 运行 @publisher。 例如:
EXEC sp_adddistpublisher @publisher = 'Server1,1500' , ,
Server2 侦听 Linux 上的端口 6549。 要将 Server2 配置为订阅服务器,请搭配 sp_addsubscription 运行 @subscriber。 例如:
EXEC sp_addsubscription @subscriber = 'Server2,6549' , ,
Server3 侦听 Windows 上的端口 6549,其中服务器名称为 Server3,实例名称为 MSSQL2017。 要将 Server3 配置为订阅服务器,请搭配 sp_addsubscription 运行 @subscriber。 例如:
EXEC sp_addsubscription @subscriber = 'Server3/MSSQL2017,6549', ,
已知问题
在重新创建订阅时,链接服务器的端口未更新。
在订阅服务器上删除并重新创建具有非默认端口的订阅时,系统会重复使用现有的链接服务器,但无法更新端口配置。 这可能会导致尝试连接到订阅服务器时复制失败。
有关此已知问题的详细信息,包括症状、原因和解决方法,请参阅 “删除推送订阅”。