MSSQL_ENG021798

適用対象: SQL Server Azure SQL Managed Instance

メッセージの詳細

属性 Value
製品名 SQL Server
イベント ID 21798
イベント ソース MSSQLSERVER
コンポーネント SQL Server データベース エンジン
シンボル名
メッセージ テキスト 続行する前に、'%s' エージェント ジョブを '%s' から追加してください。 '%s' については、マニュアルを参照してください。

説明

パブリケーションを作成するには、パブリッシャーの sysadmin 固定サーバー ロールのメンバーまたはパブリケーション データベースの db_owner 固定データベース ロールのメンバーであることが必要です。 db_owner ロールのメンバーのときは、以下の場合にこのエラーが発生します。

  • SQL Server 2000 (8.x) からスクリプトを実行します。 SQL Server 2005 (9.x) で変更されたセキュリティ モデル。これらのスクリプトを更新する必要があります。

  • ストアド プロシージャ sp_addpublication は、 sp_addlogreader_agent (Transact-SQL)を実行する前に実行されます。 これはすべてのトランザクション パブリケーションに当てはまります。

  • ストアド プロシージャ sp_addpublication は、 sp_addqreader_agent (Transact-SQL)を実行する前に実行されます。 これは、キュー更新サブスクリプションに対して有効なトランザクション アプリケーションに当てはまります (sp_addpublication@allow_queued_tran パラメーターの値が TRUE)。

ストアド プロシージャはそれぞれエージェント ジョブを作成sp_addlogreader_agentsp_addqreader_agentし、エージェントを実行する Microsoft Windows アカウントを指定できます。 sysadmin ロールのユーザーの場合、sp_addlogreader_agentおよびsp_addqreader_agentが実行されない場合、エージェント ジョブは暗黙的に作成されます。エージェントはディストリビューターのSQL Server エージェント サービス アカウントのコンテキストで実行されます。 sysadmin ロールでは、ユーザーは sp_addlogreader_agent および sp_addqreader_agent を必要としませんが、セキュリティ上、エージェントごとに異なるアカウントを指定することをお勧めします。 詳細については、「 レプリケーション エージェント セキュリティ モデル」を参照してください。

ユーザーの操作

正しい順序でプロシージャを実行してください。 詳しくは、「 パブリケーションを作成」をご覧ください。 以前のバージョンの SQL Server のレプリケーション スクリプトがある場合は、SQL Server 2005 (9.x) 以降のバージョンで必要なストアド プロシージャとパラメーターを含むようにこれらのスクリプトを更新します。 詳細については、「 レプリケーション スクリプトのアップグレード (レプリケーション Transact-SQL プログラミング)」を参照してください。