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