sql >> Database teknologi >  >> RDS >> Sqlserver

Hvilke tilladelser kræves for at masseindsætte i SQL Server fra en netværksshare med Windows-godkendelse?

For nylig havde vi dette problem for en række af vores udviklere. Jeg har fundet på en række måder at tillade test af bulkinserts.

Vores præference var at bruge en SQL service-konto. Vi satte SQL-serveren og SQL-agenten til at køre som en servicekonto og tillod derefter udviklerne at udløse agentjob. Servicekontoen fik tilladelse til UNC-aktierne, og alt dette fungerede korrekt. Bemærk, at servicekontoen altid vil køre disse agentjob fint (forudsat at UNC-tilladelser er indstillet). Det er de udviklere, der prøver at teste, der vil støde på disse problemer.

En anden metode er at oprette en share på selve SQL-serveren og pege bulk-indsættelsesstien mod den lokale mappe. Disse fejl ser ud til kun at opstå ved adgang til UNC-stier. Uanset om UNC-stien har de korrekte tilladelser til at give dig adgang. For eksempel opretter vi C:\test\ som en mappe på selve SQL-serveren og giver den tilladelse til at tillade en udvikler at slippe testfiler der. Disse kaldes derefter via kommandoen bulk insert.

En kommando skal muligvis køres mod master for at tillade en SQL-logingruppetilladelse til at masseindsætte. Dette er som nedenfor.

GRANT ADMINISTER BULK OPERATIONS TO "domain\usergroup"


  1. Skal trimme blank plads i oracle

  2. Sådan ændres skrivebeskyttet tilladelse for at indstille en ny værdi for MySQL-serversystemvariablen

  3. Laravel 5.1 Migration og seeding Kan ikke afkorte en tabel, der henvises til i en fremmednøglebegrænsning

  4. SQL Server Index Usage Stats