SQL Server 2008 または SQL Server 2008 R2 でディストリビューションエージェントを実行したときに表示されるエラーメッセージ "ディストリビューションエージェントは、一時ファイルの作成に失敗しました"

適用対象: SQL Server 2008 StandardSQL Server 2008 DeveloperSQL Server 2008 Enterprise

現象


Windows Server 2008 ベースのコンピューターにインストールされている Microsoft SQL Server 2008 または Microsoft SQL Server 2008 R2 のインスタンスで、トランザクションパブリケーションを構成します。 ディストリビューションエージェントに対して、[OLEDB ストリーミングの配布プロファイル] プロファイルを使用します。 ディストリビューションエージェントを実行すると、次のエラーメッセージが表示されます。
ディストリビューションエージェントが C:\Program の SQL server 100\ COM ディレクトリで一時ファイルを作成できませんでした。 システムが errorcode 5 を返しました。

原因


ディストリビューションエージェントの場合は、OLEDB ストリーミングの配布プロファイルを使用するか、カスタムプロファイルで OLEDB ストリームを使う場合、ディストリビューションエージェントは次のディレクトリに一時ファイルを作成します。
SQL server | COM
SQL Server エージェントを実行しているアカウントが、COM フォルダーへの書き込みアクセス権を持っていない場合、ジョブとして実行されている場合、ディストリビューションエージェントは失敗します。 COM フォルダーへの書き込みアクセス権がないアカウントを使用してコマンドラインから配布エージェントを実行した場合、同じエラーが発生します。

回避策


この問題を回避するには、SQL Server エージェントサービスを実行しているアカウントの [COM] フォルダーに対する書き込みアクセス許可を付与します。 コマンドラインから配布エージェントを実行する場合は、ディストリビューションエージェントの実行に使用するアカウントの [COM] フォルダーに書き込みアクセス許可を付与します。注: レプリケーションジョブに割り当てられているアカウントを変更する場合、そのアカウントには、COM フォルダーへの書き込みアクセス許可が必要です。これらの手順を実行しても、この問題が断続的に発生する場合は、システムで発生しているウイルス対策スキャンから、COM フォルダーが除外されていることを確認してください。

詳細情報


エラーコード5は、エラー "アクセスが拒否されました" を示します。

状態


マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。