sa登陸失敗 SQL Server錯誤18456的解決方法
查找問題的過程:(注:用windows賬號還是可以登錄的)
第一步: 啟動所有與SQL有關(guān)的服務(wù),問題依舊;
第二步: 查看windows防火墻,被默認(rèn)啟動了,不啟動選擇項被Disabled
兩個提示“由于安全考慮,某些設(shè)置由組策略控制”“Windows防火墻正在使用您的域設(shè)置”,先用gpedit.msc打組策略編輯器,機算機配置--管理模板--網(wǎng)絡(luò)--網(wǎng)絡(luò)連接--Windows防火墻--標(biāo)準(zhǔn)配置文件,查看右邊各選項屬性,都是未配置狀態(tài),問題不在這里。
另外一個提示中提到域設(shè)置,域設(shè)置不可能禁用SQL Server,并且我查看本地開放端口(netstart -an),25,1433,1434都是開發(fā)狀態(tài)。
暈,會不會是密碼錯誤?
第三步:用windows賬號登錄
連接成功后, 選擇'屬性'
右鍵實例,在'屬性'窗口中, 轉(zhuǎn)到'Security'(安全性)項, 查看'服務(wù)器身份驗證'中設(shè)置確為'SQL Server和Windows身份驗證模式',
然后執(zhí)行下面的語句啟用sa用戶, 同時更改sa的密碼
EXEC sp_password 'sa',null,'sa'
ALTER LOGIN sa ENABLE
執(zhí)行出錯:
消息 15116,級別 16,狀態(tài) 1,第 1 行
密碼有效性驗證失敗。該密碼太短,不符合 Windows 策略要求。
哈哈,問題找到。
本地設(shè)置可能被域設(shè)置覆蓋。而域設(shè)置中指定了安全策略,密碼必須有一定的復(fù)雜性。重新更改sa密碼,
EXEC sp_password 'sa','Uiop_098Mn','sa'
ALTER LOGIN sa ENABLE
問題解決!
