破解SQL Server连接错误-“用户xx登录失败,原因:未与信任 SQL Server 连接相关”
“用户xx登录失败,原因:未与信任 SQL Server 连接相关”,这也是SQL Server使用者在连接SQL Server时最常碰到的问题之一。下面我们就来详细分析引起此问题的原因以及解决办法。
一、原因 :
SQL Server使用了"仅 Windows"的身份验证方式,但客户端却使用SQL Server验证方式连接服务器,因此会产生上述的错误提示。
二、解决方法如下:
1、 在服务器端使用企业管理器,并且选择"使用 Windows 身份验证"连接上 SQL Server
2、 展开"SQL Server组",鼠标右键点击SQL Server服务器的名称,选择"属性",再选择"安全性"选项卡;
3、 在"身份验证"下,选择"SQL Server和 Windows "。
4、 重新启动SQL Server服务。
在以上解决方法中,如果在第 1 步中使用"使用 Windows 身份验证"连接 SQL Server 失败,那么可能的情况是某些管理员为了安全的需要,删除了在 SQL Server 中的两个缺省的登录帐户:BUILTIN\Administrators 以及 <机器名>\Administrator 。那么此时无论用何种方式,用户均无法使用进行连接。
这种情况下,我们可以通过修改一个注册表键值来将身份验证方式改为 SQL Server 和 Windows 混合验证,步骤如下所示:
1、点击"开始"-"运行",输入regedit,回车进入注册表编辑器;
2、依次展开注册表项,浏览到以下注册表键:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer]
3、在屏幕右方找到名称"LoginMode",双击编辑双字节值
4、将原值从1改为2,点击"确定"
5、关闭注册表编辑器
6、重新启动SQL Server服务。
此时,用户可以成功地使用sa(如果您遗忘了sa的密码,那就回天无术了)在企业管理器中新建SQL Server注册,然后在 SQL Server 中恢复上述两个缺省的登录帐户:BUILTIN\Administrators 以及 <机器名>\Administrator 方法如下:
1、打开企业管理器,展开服务器组,然后展开服务器
2、展开"安全性",右击"登录",然后单击"新建登录"
3、在"名称"框中,输入 BUILTIN\Administrators
4、在"服务器角色"选项卡中,选择"System Administrators"
5、点击"确定"退出
6、使用同样方法添加 <机器名>\Administrator 登录。
三、说明:
以下注册表键:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode
的值决定了SQL Server将采取何种身份验证模式.
1.表示使用"Windows 身份验证"模式
2.表示使用混合模式(Windows 身份验证和 SQL Server 身份验证).