sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man ändrar SQL Server-auktoriseringsläge utan Management Studio

Här är vad Management Studio gör för att ändra autentiseringsläget från blandat till endast Windows:

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

Och från Windows bara tillbaka till blandat:

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

Du kan anropa samma kommando från olika källor som kan ansluta till SQL Server som SQLCMD, PowerShell, VBScript, C#, etc. Eller så kan du logga direkt in på servern, navigera till den registernyckeln och ändra värdet manuellt (som @ marc_s föreslog).

Observera att du i alla fall måste starta om SQL Server för att ändringarna ska träda i kraft. Du kan se de första posterna i den nya felloggen vid omstart för att verifiera att autentiseringsläget är korrekt. Det kommer att säga (för blandat):

date/time    Server    Authentication Mode is MIXED.


  1. MySQL endast inom innevarande månad?

  2. ActiveRecord::StatementInvalid, PG::UndefinedTable-fel, men genererad SQL fungerar

  3. Ogiltigt nummer i Oracle SQL Case

  4. Dela mysql-frågor i array, varje fråga separerad av;