Dela via


Felmeddelandet "Distributionsagenten kunde inte skapa temporära filer" när du kör distributionsagenten i SQL Server

Den här artikeln hjälper dig att lösa problemet när du kör distributionsagenten i SQL Server.

Ursprunglig produktversion: SQL Server
Ursprungligt KB-nummer: 956032

Symptom

På en instans av Microsoft SQL Server som är installerad på en Windows Server-baserad dator konfigurerar du en transaktionspublikation. Du använder profilen Distribution Profile for OLEDB streaming för distributionsagenten. När du kör distributionsagenten får du ett felmeddelande som liknar följande:

Distributionsagenten kunde inte skapa temporära filer i katalogen C:\Program Files\Microsoft SQL Server\<nnn>\COM . System returnerade felkod 5.

Kommentar

<nnn> identifierar versionen av SQL Server. Mer information finns i Filplatser för standardinstanser och namngivna instanser av SQL Server.

Orsak

När du använder profilen Distribution Profile for OLEDB streaming för distributionsagenten eller om du använder OLEDB-direktuppspelning i en anpassad profil, före SQL Server 2019, skapar distributionsagenten temporära filer i katalogen: C:\Program Files\Microsoft SQL Server\<nnn>\COM.

Kommentar

I SQL Server 2019 och senare versioner skapas dessa temporära filer nu under det konto som kör distributionsagenten, så i stället för katalogen C:\Program Files\Microsoft SQL Server\<nnn>\COM skulle filerna finnas i katalogen C:\Users\DistributionAgentAccount\AppData\Temp. DistributionAgentAccount är det konto under vilket distributionsagenten körs.

Om det konto som kör SQL Server-agenten inte har skrivåtkomst till COM-mappen misslyckas distributionsagenten när den körs som ett jobb. Om du kör distributionsagenten från en kommandorad med hjälp av ett konto som inte har skrivåtkomst till COM-mappen uppstår samma fel.

Lösning

Lös problemet genom att bevilja skrivbehörighet till COM-mappen för det konto som kör SQL Server Agent-tjänsten. Om du kör distributionsagenten från en kommandorad beviljar du skrivbehörigheter till COM-mappen för det konto som du använder för att köra distributionsagenten.

Kommentar

Om du ändrar det konto som har tilldelats replikeringsjobbet ska kontot ha skrivbehörighet till COM-mappen.

Om du fortfarande stöter på det här problemet tillfälligt efter att du har följt de här stegen bör du se till att COM-mappen undantas från alla antivirusgenomsökningar som sker i systemet.

Mer information

Felkod 5 anger att felet är "åtkomst nekas".