メッセージの詳細
| 製品名 | SQL Server |
| イベント ID | 21797 |
| イベント元 | MSSQLSERVER |
| コンポーネント | SQL Server データベース エンジン |
| シンボル名 | |
| メッセージ テキスト | '%s' は、'MACHINE\Login' または 'DOMAIN\Login' という形式の有効な Windows ログインである必要があります。 '%s' のドキュメントを参照してください。 |
説明
このエラーは、 @job_login パラメーターに指定された値が null または無効な場合に、次のレプリケーション ストアド プロシージャによって発生します。 このエラーは、 db_owner 固定データベース ロールのメンバーが、以前のバージョンの SQL Server のスクリプトを実行する場合に発生する可能性があります。 SQL Server 2005 でセキュリティ モデルが変更され、これらのスクリプトを更新する必要があります。
これらのストアド プロシージャは、適切なサーバーの sysadmin 固定サーバー ロールのメンバー、または適切なデータベースの固定データベース ロール db_owner のメンバーによって実行できます。 ストアド プロシージャはそれぞれエージェント ジョブを作成し、エージェントを実行する Microsoft Windows アカウントを指定できます。 sysadmin ロールのユーザーの場合、Windows アカウントが指定されていない場合でも、エージェント ジョブが暗黙的に作成されます (アカウントが指定されている場合は有効である必要があります)。エージェントは、適切なサーバーの SQL Server エージェント サービス アカウントのコンテキストで実行されます。 アカウントは必要ありませんが、エージェント用に別のアカウントを指定することはセキュリティのベスト プラクティスです。 詳細については、「 レプリケーション エージェント セキュリティ モデル」を参照してください。
ユーザー操作
各プロシージャの @job_login パラメーターに有効な Windows アカウントを指定してください。 以前のバージョンの SQL Server のレプリケーション スクリプトがある場合は、SQL Server 2005 で必要なストアド プロシージャとパラメーターを含むようにこれらのスクリプトを更新します。 詳細については、「 レプリケーション スクリプトのアップグレード (レプリケーション Transact-SQL プログラミング)」を参照してください。