程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> 用戶"sa"登陸失敗 SQLServer 錯誤18456的解決方法

用戶"sa"登陸失敗 SQLServer 錯誤18456的解決方法

編輯:更多數據庫知識

用windows賬號還是可以登錄的。

查找問題的過程:
第一步: 啟動所有與SQL有關的服務,問題依舊;
第二步: 查看windows防火牆,被默認啟動了,不啟動選擇項被Disabled。兩個提示“由於安全考慮,某些設置由組策略控制”“Windows防火牆正在使用您的域設置”,先用gpedit.msc打組策略編輯器,機算機配置--管理模板--網絡--網絡連接--Windows防火牆--標准配置文件,查看右邊各選項屬性,都是未配置狀態,問題不在這裡。
另外一個提示中提到域設置,域設置不可能禁用SQL Server,並且我查看本地開放端口(netstart -an),25,1433,1434都是開發狀態。

暈,會不會是密碼錯誤?

第三步:我用windows賬號登錄,連接成功後,, 選擇"屬性",
右鍵實例,在"屬性"窗口中, 轉到"Security"(安全性)項, 查看"服務器身份驗證"中設置確為"SQL Server和Windows身份驗證模式",
然後執行下面的語句啟用sa用戶, 同時更改sa的密碼
EXEC sp_password 'sa',null,'sa'
ALTER LOGIN sa ENABLE

執行出錯:
消息 15116,級別 16,狀態 1,第 1 行
密碼有效性驗證失敗。該密碼太短,不符合 Windows 策略要求。

哈哈,問題找到。

本地設置可能被域設置覆蓋。而域設置中指定了安全策略,密碼必須有一定的復雜性。重新更改sa密碼,
EXEC sp_password 'sa','Uiop_098Mn','sa'
ALTER LOGIN sa ENABLE

問題解決!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved