Oto, co robi Management Studio, aby zmienić tryb uwierzytelniania z mieszanego na tylko Windows:
EXEC xp_instance_regwrite
N'HKEY_LOCAL_MACHINE',
N'Software\Microsoft\MSSQLServer\MSSQLServer',
N'LoginMode',
REG_DWORD,
1;
A od Windows tylko z powrotem do mieszanych:
EXEC xp_instance_regwrite
N'HKEY_LOCAL_MACHINE',
N'Software\Microsoft\MSSQLServer\MSSQLServer',
N'LoginMode',
REG_DWORD,
2; -- only difference is right here
Możesz wywołać to samo polecenie z różnych źródeł, które mogą łączyć się z SQL Server, takich jak SQLCMD, PowerShell, VBScript, C# itp. Lub możesz zalogować się bezpośrednio na serwerze, przejść do tego klucza rejestru i zmienić wartość ręcznie (jako @ zasugerował marc_s).
Zauważ, że we wszystkich przypadkach musisz ponownie uruchomić SQL Server, aby zmiany zaczęły obowiązywać. Możesz wyświetlić kilka pierwszych wpisów w nowym logowaniu błędów przy ponownym uruchomieniu, aby sprawdzić, czy tryb uwierzytelniania jest poprawny. Powie (dla mieszanych):
date/time Server Authentication Mode is MIXED.