Freigeben über


Fehlermeldung "Der Verteilungs-Agent konnte temporäre Dateien nicht erstellen", wenn Sie die Verteilungs-Agent in SQL Server ausführen

In diesem Artikel können Sie das Problem umgehen, wenn Sie die Verteilungs-Agent in SQL Server ausführen.

Ursprüngliche Produktversion: SQL Server
Ursprüngliche KB-Nummer: 956032

Problembeschreibung

Auf einer Instanz von Microsoft SQL Server, die auf einem Windows Server-basierten Computer installiert ist, konfigurieren Sie eine Transaktionsveröffentlichung. Sie verwenden das Distribution Profile for OLEDB streaming Profil für die Verteilungs-Agent. Wenn Sie die Verteilungs-Agent ausführen, erhalten Sie eine Fehlermeldung wie die folgende:

Fehler beim Erstellen temporärer Dateien im Verzeichnis "C:\Programme\Microsoft SQL Server\<nnn>\COM ". Der Vom System zurückgegebene Fehlercode 5.

Notiz

<nnn> identifiziert die Version von SQL Server. Weitere Informationen finden Sie unter Dateispeicherorte für Standard- und benannte Instanzen von SQL Server.

Ursache

Wenn Sie das Distribution Profile for OLEDB streaming Profil für das Verteilungs-Agent verwenden oder OLEDB-Streaming in einem benutzerdefinierten Profil verwenden, erstellt die Verteilungs-Agent vor SQL Server 2019 temporäre Dateien im Verzeichnis: C:\Program Files\Microsoft SQL Server\<nnn>\COM.

Notiz

In SQL Server 2019 und höheren Versionen werden diese temporären Dateien jetzt unter dem Konto erstellt, das die Verteilungs-Agent ausführt. Anstelle des Verzeichnisses "C:\Programme\Microsoft SQL Server\nnn>\COM" befinden sich diese Dateien also im Verzeichnis "C:\Users\DistributionAgentAccount\AppData\Temp".< Dies DistributionAgentAccount ist das Konto, unter dem die Verteilungs-Agent ausgeführt wird.

Wenn das Konto, das ausgeführt wird, SQL Server-Agent keinen Schreibzugriff auf den COM-Ordner hat, schlägt die Verteilungs-Agent fehl, wenn es als Auftrag ausgeführt wird. Wenn Sie die Verteilungs-Agent über eine Befehlszeile ausführen, indem Sie ein Konto verwenden, das keinen Schreibzugriff auf den COM-Ordner hat, tritt derselbe Fehler auf.

Problemumgehung

Um dieses Problem zu umgehen, erteilen Sie dem COM-Ordner Schreibberechtigungen für das Konto, das den SQL Server-Agent Dienst ausführt. Wenn Sie die Verteilungs-Agent über eine Befehlszeile ausführen, erteilen Sie dem COM-Ordner Schreibberechtigungen für das Konto, das Sie zum Ausführen der Verteilungs-Agent verwenden.

Notiz

Wenn Sie das Konto ändern, das dem Replikationsauftrag zugewiesen ist, sollte das Konto über Schreibberechtigungen für den COM-Ordner verfügen.

Wenn nach dem Ausführen dieser Schritte immer noch dieses Problem auftritt, sollten Sie sicherstellen, dass der COM-Ordner von einer Antivirenüberprüfung ausgeschlossen wird, die auf dem System auftritt.

Weitere Informationen

Fehlercode 5 gibt an, dass der Fehler "Zugriff verweigert" lautet.