安装了sqlserver 2008,安的时候选择了windows 身份认证。后来发现这样很不方便,于是想改回来用sqlserver 身份严重。网上找了很多方法,结果很不理想。正确的做法是:
(1)用windows身份登录,在服务器上属性 选择混合方式登录。
(2)在查询窗口里写入以下存储过程 EXEC sp_password 'oldpassword', 'newpassword', 'sa' 。'oldpassword'若没有或者不知道填NULL。
完成。
大家都知道sqlserver2000 与2008 的备份之间不能相互还原,我机子上装的2008,找来的备份是2000上的。无奈又在机子上装了2000,结果在2008内登录的全是2000服务器。2008的反而登不上。查了查网上的解决方式,是在ssms里面把内置账户给位本地账户。就能以sql2008的服务器登上。但上只能以windows身份。sa 账户不行,用windows身份等进去,在安全里sa是有的。密码是掩码看不出来。直接在窗口里改,老是提示“不能建立凭证”。最后用上面的方法解决的。
上面能很好的把我遇到的情况解决,但是还有一些其他的情况,还得需要设置一下,转自http://blog.csdn.net/zouyujie1127/article/details/6237849,说的很详细,下面摘录如下:
步骤:
1、用Windows身份验证方式进入SQL2008,在“对象资源管理器”右击根目录,弹出服务器属性。在“选择页”->“安全性”->勾选Sql Server和Windows身份验证模式->确定。
到这里就可以断开连接退出并使用“SQL Server身份验证”模式登录了。
由于默认不启用sa,所以如果启用sa账户登录,则还需要如下设置:
2、回到“对象资源管理器”,展开“安全性”,展开“登录名”就会看到登录名sa,右键它-->属性,“选择页”上选“状态”,右边的登陆选“启用”。确定。
这样就可以用sa登录,密码默认为空
3、若要修sa密码,可做如下操作:
新建查询,执行语句:
EXEC sp_password NULL, '你的密码', 'sa';
(在此注意的是密码的策略,如果要用简单密码,则要在sa属性页里取消掉“强制实施密码策略”)
sp_password 的说明:sp_password oldpassword,newpassword,loginame
但是在后续版本的SQL中,MS建议使用ALTER LOGIN而不是sp_password:
ALTER LOGIN sa WITH PASSWORD = 'aa' --把登录密码改为aa
ALTER LOGIN用来更改 SQL Server 登录帐户的属性:
ALTER LOGIN abina WITH NAME = abina2020;----将登录名abina改为abina2020
ALTER LOGIN abina ENABLE; -----启用已经禁用的登录
此时就可以用sa账户和自定义密码在SQL身份验证模式下登录了!
4、万一还登录不了,可做如下尝试:
打开“SQL Server配置管理器”-->展开“SQL Server网络配置”-->“MSSQLSERVER 的协议”,在右边启用“TCP/IP协议”。
然后在SQL Server服务 里重启MSSQLSERVER服务即可。