ディストリビューションの構成時に「パブリッシャーとして有効にできませんでした。」エラーが発生する

 

SQL Server Management Studio GUI を使用してディストリビューションを構成しようとした時に次のエラーが発生することがあります。

 

SQL Server で、'Server\Instance' をパブリッシャーとして有効にできませんでした。 (Microsoft.SqlServer.Rmo)プログラムの場所:場所 Microsoft.SqlServer.Management.UI.ReplicationSqlConnection.EnablePublisher(Publisher publisher, Boolean bScripting)場所 Microsoft.SqlServer.Management.UI.ConfigureDistributionWizard.InstallDistributor(Boolean& anyExceptions, Boolean bScripting, ApplicationException& outerEx, StringBuilder command)===================================オブジェクトがサーバーにありません。このオブジェクトがサーバーに存在することを確認してください。  (Microsoft.SqlServer.Rmo)プログラムの場所:場所 Microsoft.SqlServer.Replication.ReplicationObject.CommonCreate()場所 Microsoft.SqlServer.Management.UI.ReplicationSqlConnection.EnablePublisher(Publisher publisher, Boolean bScripting)

 

このエラーは、大文字小文字を区別する照合順序 (名前に CS, BIN, BIN2 を含む照合順序) がサーバー照合順序 (master データベースの照合順序) として設定されており、かつ、sys.servers カタログビューに登録されているローカルサーバ名が小文字を含む場合に発生します。

上記条件を満たしている場合には、オンプレミス環境、クラウド環境を問わず、いずれの環境においても発生します。

 

 

対処方法

sys.servers に登録されているローカルサーバー名を大文字に統一します。その後、ディストリビューションの構成を含むレプリケーションの構成を行います。

 

exec sp_dropserver ‘Server1\Instance1’exec sp_addserver ‘SERVER1\INSTANCE1’, localgo

 

 

 

適用対象

20018/2/15 時点

SQL Server 2008 : 該当
SQL Server 2008 R2 : 該当
SQL Server 2012 : 未確認
SQL Server 2014 : 未確認
SQL Server 2016 : 該当
SQL Server 2017 : 未確認