sqlserver 2012 IDE中 Windows身份验证连接服务器报错 ,Login failed for user 'xxx\Administrator'. 原因: 找不到与提供的名称匹配的登录名。

问题描述:

本地装了两个实例,一个是SQLEXPRESS,可以正常操作。但是另一个开发常用的实例MSSQLSERVER却连Windows身份验证都报错,报的错误也是很奇葩,怎么会找不到Administrator那,我登录计算机进来就用的这个账号。

详细错误如下:

无法连接到 xxx。
===================================
用户 'xxx\Administrator' 登录失败。 (.Net SqlClient Data Provider)
------------------------------
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft%20SQL%20Server&EvtSrc=MSSQLServer&EvtID=18456&LinkId=20476 
------------------------------
服务器名称: xxx
错误号: 18456
严重性: 14
状态: 1
行号: 65536
解决方案:
 
首先在微软上搜索18456,找到了这个错误的详细说明,地址https://msdn.microsoft.com/zh-cn/library/cc645917(v=sql.120).aspx。
看完之后得出了一个结论,似乎跟这个账号的权限有关,需要给这个Administrator 赋一个sqlserver里面的管理员的权限,sysadmin。然后就想先用sa登录,然后给这个用户赋权。
 
可是问题又来了,sa密码我也不知道!
 
无解,只好询问同事,同事发了一个连接,http://www.cnblogs.com/lyhabc/p/3513560.html。
问题完美得到解决。
 
大概思路是这样:
1,先停服务
2,通过cmd,以单用户模式登录sqlserver,理论参考https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2008-r2/ms180965(v%3dsql.105)
3,给Administrator 用户 赋权
4,关闭cmd,重启服务
 
打开Sqlserver,以Windows身份登录,完美,进去了。然后在修改sa的密码即可。
posted @ 2018-08-21 19:52  左正  阅读(613)  评论(0编辑  收藏  举报