如果安装sqlserver2005的时候,设置的身份验证模式为'windows'(默认),安装完成后,再设置为'sqlserver和windows'的身份验证模式,则sa用户是被禁用的.必须启用它. 1.用Windows身份验证登陆(这个应该是不会存在问题的,在新安装好实例(SQLServer)的情况下,Windows身份验证是不可能被禁用的(安装过程中没有可以设置禁用Windows身份验证的地方) ManageStudio--菜单'文件'--'连接对象资源管理器',身份验证中选择'WindowsAuthentication' 2.连接成功后,右键你的实例,选择'属性' 3.在'属性'窗口中,转到'Security'(安全性)项,在'服务器身份验证'中设置为'SQLServer和Windows身份验证模式',确定,根据提示,你应该重新启动sql服务 4.重新启动sql服务后,照用Windows身份验证连接,然后执行下面的语句启用sa用户,同时清除sa的密码(能成功登陆后再根据你的需要设置) EXECsp_passwordnull,null,'sa' ALTERLOGINsaENABLE 5.语句执行完成后,再用sa连接你的实例,应该就没有问题了. -------------------------------------------------------------------- 如果执行 EXECsp_passwordnull,null,'sa' ALTERLOGINsaENABLE;; 这句话时报如下的错:;;;; Msg15118,Level16,State1,Line1 密码有效性验证失败。该密码不够复杂,不符合Windows策略要求。 则说明你的服务器的密码策略有复杂性要求(SQL2005的密码复杂性与Windows的密码复杂性策略是关联的),则要求你把sa的密码设置为一个复杂的密码,因此得改为如下语句: EXECsp_passwordnull,'abc.!@#456SA','sa' ALTERLOGINsaENABLE;; 注: sp_password语法如下: sp_password[旧密码],<新密码>,[登录名]
如果还无法解决,请打开Microsoft SQL Server 2005→配置工具→SQL Server Configuration Manager,将所有协议启用,然后按提示重启服务即可