Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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.