ディストリビューション エージェントで「The distribution agent failed to create temporary files in 'C:\Program Files\Microsoft SQL Server\130\COM' directory. System returned errorcode 5.」エラーが発生する - SQL Server

ディストリビューション エージェントで「The distribution agent failed to create temporary files in '...' directory. System returned errorcode 5.」エラーが発生する現象について紹介します。

現象

ディストリビューションエージェントが動作しているSQL Serverで、下記のエラーが発生します。
レプリケーション-レプリケーション ディストリビューション サブシステム: エージェント (パブリッシュサーバー名)-(パブリッシュ データベース名)-(パブリケーション名)-(サブスクライブサーバー名)-(n) は失敗しました。The distribution agent failed to create temporary files in 'C:\Program Files\Microsoft SQL Server\130\COM' directory. System returned errorcode 5.

多くの場合、連続してエラーが発生します。

原因

SQL Server エージェントが "C:\Program Files\Microsoft SQL Server\130\COM" に書き込みできないためエラーが発生します。

対策

"C:\Program Files\Microsoft SQL Server\130\COM" にSQL Serverエージェントが書き込みできるよう設定します。

SQL Server エージェントの実行アカウントを確認する

はじめに、SQL Server エージェントの実行アカウントを確認します。
SQL Server 構成マネージャーを起動します。下図のウィンドウが表示されます。左側のツリービューで[SQL Server のサービス]のノードをクリックします。右側にSQL Serverのサービスのリストが表示されます。


[SQL Server エージェント]の項目をクリックして選択し、右クリックします。ポップアップメニューが表示されますので[プロパティ]メニューをクリックします。


[SQL Server エージェントのプロパティ]ダイアログが表示されます。
ウィンドウの[ログオン]タブをクリックして設定内容を確認します。このSQL Server エージェントは"NT Service\SQLSERVERAGENT" アカウントで実行されていることが確認できました。

COM ディレクトリへのアクセス権付与

"C:\Program Files\Microsoft SQL Server\130\"ディレクトリを開きます。"COM"ディレクトリも存在しています。

COMディレクトリをクリックして選択し、右クリックでポップアップメニューを表示します。メニューの[プロパティ]をクリックします。

[COM]ディレクトリのプロパティダイアログが表示されます。


ウィンドウ上部の[セキュリティ]タブをクリックしします。下図の画面が表示されます。上部の枠の[編集]ボタンをクリックします。


アクセス権の編集モードになります。"NT Service\SQLSERVERAGENT" アカウントに "C:\Program Files\Microsoft SQL Server\130\COM" の書き込み権を追加します。アカウントが一覧にないため[追加]ボタンをクリックします。


[ユーザー または 不ループの選択]ダイアログボックスが表示されます。


[選択するオブジェクト名を入力してください]のテキストボックスに "NT Service\SQLSERVERAGENT" を入力します。入力後、右側の[名前の確認]ボタンをクリックします。


名前の確認ができました。表示が下線付きの"SQLSERVERAGENT"になります。[OK]ボタンをクリックします。


"SQLSERVERAGENT"のアカウントに書き込み権限を追加します。設定後[OK]ボタンをクリックします。


[COM]ディレクトリのプロパティダイアログに戻ります。"SQLSERVERAGENT"のアカウントが追加され、書き込み権限もあります。[OK]ボタンをクリックしてダイアログボックスを閉じます。


イベント ビューアーでエラーが発生していないか確認します。

著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
最終更新日: 2024-01-07
作成日: 2016-10-24
iPentec all rights reserverd.