sql >> Database >  >> RDS >> Sqlserver

De autorisatiemodus van SQL Server wijzigen zonder Management Studio

Dit is wat Management Studio doet om de authenticatiemodus te wijzigen van gemengd naar alleen Windows:

EXEC xp_instance_regwrite 
    N'HKEY_LOCAL_MACHINE', 
    N'Software\Microsoft\MSSQLServer\MSSQLServer', 
    N'LoginMode', 
    REG_DWORD, 
    1;

En van Windows alleen terug naar gemengd:

EXEC xp_instance_regwrite 
    N'HKEY_LOCAL_MACHINE', 
    N'Software\Microsoft\MSSQLServer\MSSQLServer', 
    N'LoginMode', 
    REG_DWORD, 
    2; -- only difference is right here

U kunt dezelfde opdracht aanroepen vanuit verschillende bronnen die verbinding kunnen maken met SQL Server, zoals SQLCMD, PowerShell, VBScript, C#, enz. Of u kunt rechtstreeks inloggen op de server, naar die registersleutel navigeren en de waarde handmatig wijzigen (zoals @ marc_s voorgesteld).

Merk op dat u in alle gevallen SQL Server opnieuw moet opstarten om de wijzigingen door te voeren. U kunt de eerste paar vermeldingen in het nieuwe foutenlogboek bekijken bij opnieuw opstarten om te controleren of de authenticatiemodus correct is. Er staat (voor gemengd):

date/time    Server    Authentication Mode is MIXED.


  1. SQL Server 2008:ik heb 1000 tabellen, ik moet weten welke tabellen gegevens hebben

  2. NU() in de database invoegen met CodeIgniter's Active Record

  3. Problemen met het omwikkelen van hoofd rond complexe SQL-verwijderquery

  4. SAMENVOEGEN IN invoegvolgorde