sql >> Databasteknik >  >> RDS >> Sqlserver

Problem med SQL Server-agentens jobbkonto

Jag skulle vanligtvis köra SQL Server Agent-jobben under samma konto som din app får åtkomst till databasen.

Om det kontot är för begränsat i sina behörigheter (vilket kan vara bra!), skulle jag skapa ett enda konto för den appen och alla dess SQL-jobb (om det är möjligt) och köra alla SQL-jobb under det kontot.

Du kan potentiellt köra varje steg under ett annat konto, men jag skulle inte använda det i allmänhet (det gör det bara väldigt svårt att veta och förstå vad som körs under vilket konto). Använd det bara om du måste köra ett särskilt känsligt steg som behöver en massa extra behörigheter och de behörigheterna är bara tillgängliga för ett visst systemkonto eller något.

Kontot som SQL Server Agent Windows-tjänsten körs under har verkligen ingen inverkan på vad dina jobbsteg kommer att köras under.

Så det kokar ner till egentligen bara två konton:

  • ett konto behövs för att köra SQL Server Agent Windows-tjänsten - det här är ett Windows-konto på din maskin/server som behöver ha tillräckligt med behörigheter för att köra tjänsten, starta och stoppa den - antingen använd LocalSystem, Network Service, eller vilket annat Windows som helst konto du måste köra tjänster med

  • Det andra kontot skulle vara kontot att köra dina SQL Server Agent-steg under - det är vanligtvis ett SQL Server-konto (som kan vara baserat på ett Windows-konto), och det behöver tillräckligt med privilegier inuti SQL Server för att göra sitt jobb, t.ex. den behöver tillgång till databasobjekten och allt. Jag skulle sträva efter att bara ha ett konto för varje app som kör SQL Server-jobben - gör livet mycket enklare!

Marc

PS:För att ställa in användaren att köra ett steg under, måste du använda sidan "Avancerat" i dialogrutan Jobbstegs egenskaper och välja användaren från ett popup-fönster:



  1. Använda rownum i oracle SQL-sats i kombination med order by-sats

  2. Migrera databas från Postgres till MySQL

  3. SELECT förekomster av en kombination av kolumner med ett minimivillkor på COUNT

  4. Färsk MYSQL-installation, åtkomst nekad för användarens "root"