如何在没有Management Studio的情况下更改SQL Server授权模式

时间:2012-08-15 16:05:14

标签: sql-server-2008 sql-server-2012

有没有办法在不使用SQL Server Management Studio的情况下更改SQL Server 2008或2012中的授权模式?

2 个答案:

答案 0 :(得分:15)

以下是Management Studio将身份验证模式从混合更改为仅用于Windows的功能:

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

从Windows回到混合:

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

您可以从可以连接到SQL Server的各种源调用相同的命令,例如SQLCMD,PowerShell,VBScript,C#等。或者您可以直接登录到服务器,导航到该注册表项,然后手动更改值(如@marc_s建议的那样)。

请注意,在所有情况下,您都必须重新启动SQL Server才能使更改生效。您可以在重新启动时查看新错误日志中的前几个条目,以验证身份验证模式是否正确。它会说(混合):

date/time    Server    Authentication Mode is MIXED.

答案 1 :(得分:0)

我发现,如果在64位Windows上安装了32位SQL Express(就我而言),则reg路径必须为HKEY_LOCAL_MACHINE \ SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\MSSQLServer。此处的更改是Wow6432Node键。