问题描述:
本地装了两个实例,一个是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的密码即可。