[FIX] 同時に開始された複数の SQL エージェントのジョブが主キーのエラー メッセージで失敗する

この記事は、以前は次の ID で公開されていました: JP286253
この資料は、アーカイブされました。これは "現状のまま" で提供され、更新されることはありません。
BUG #: 351502 (SHILOH_BUGS)
現象
同じログインが所有する複数の SQL エージェント ジョブを同時に開始するようにスケジュールが設定されている場合、1 つ以上のジョブが次のようなエラー メッセージで失敗します。
ジョブは失敗しました。所有者 DOMAIN\user (ジョブ CopyM1ToMx) にサーバーのアクセス権があるかどうか確認できません。(reason: 主キー違反、制約 'PK__syscachedcredent__0AD2A005' : オブジェクト 'syscachedcredentials' には重複したキーは挿入できません。[SQLSTATE 23000] (Error 2627) ステートメントは終了されました。[SQLSTATE 01000] (Error 3621)).
原因
SQL エージェントは、ジョブの所有者にサーバーへのアクセス権があるかどうか、およびジョブの所有者が sysadmin ロールのメンバであるかどうかを監視しています。同一のログインが所有する 2 つのジョブが同時に開始されると、1 つのジョブが挿入を実行して、もう 1 つのジョブが更新を実行するのではなく、両方のジョブが同じテーブルに同時に行を挿入しようとすることがあります。両方のジョブがテーブルに行を挿入しようとした場合、主キー違反が発生します。
解決方法
この問題を解決するには、Microsoft SQL Server 2000 の最新の Service Pack を入手します。関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
290211 最新の SQL Server 2000 Service Pack の入手方法

修正プログラム

: 次の修正プログラムは Microsoft SQL Server 2000 Service Pack 1 がリリースされる前に作成されました。

修正プログラム (英語版) の属性は次のとおりです。ただし、これより新しい修正プログラムがリリースされている可能性もあります。
   ファイル名     プラットフォーム   ----------------------   s80242i.exe   x86				
: ファイルの依存関係のため、上記のファイルを含む最新の修正プログラムや機能にその他のファイルが含まれる場合もあります。
回避策
同じログインが所有しているジョブの開始時間をずらして、一度に 1 つのジョブのみが開始されるようにします。
状況
マイクロソフトでは、この問題を Microsoft SQL Server 2000 の問題として認識しています。この問題は、SQL Server 2000 Service Pack 1 で最初に修正されました。
sp_sqlagent_has_server_access
プロパティ

文書番号:286253 - 最終更新日: 12/06/2015 00:04:59 - リビジョン: 3.1

Microsoft SQL Server 2000 Standard Edition

  • kbnosurvey kbarchive kbbug kbfix kbqfe kbsqlserv2000sp1fix KB286253
フィードバック