SQL Server日志顯示”錯誤:18456,嚴重性:14,狀態:8。Login failed for user'sa’.原因:密碼與所提供的登錄名不匹配。“的解決辦法
[重要通告]如您遇疑難雜癥,本站支持知識付費業務,掃右邊二維碼加博主微信,可節省您寶貴時間哦!
一早醒來客戶說他家的金蝶k3服務器顯示sa賬戶被鎖定了,提示了一堆錯誤,如下所示
錯誤:18456,嚴重性:14,狀態:8。
Login failed for user'sa’.原因:密碼與所提供的登錄名不匹配。[客戶端:192.168.10.82]
Login failed for user 'sa’ because the account is currently locked out. The system administrator can unlock it.[客戶端:192.168.10.8
SQL Server日志顯示”錯誤:18456,嚴重性:14,狀態:8。Login failed for user'sa’.原因:密碼與所提供的登錄名不匹配。“的解決辦法
出現這樣的問題主要還是密碼策略造成的,這個錯誤在管家婆當時上處理過,今天在寫一下;
1、以windows驗證模式進入數據庫管理器。
2、右擊sa,選擇屬性:在常規選項卡中,重新填寫密碼和確認密碼(改成略繁瑣的并備注)。把強制密碼過期與強制實施密碼策略去掉。
3、點擊狀態選項卡:勾選授予和啟用。然后確定
4、右擊實例名稱,選擇屬性,點安全性,確認選擇了SQL SERVER 和Windows身份驗證模式。
5、重啟SQLSERVER服務或干脆直接重啟服務器即可!
延伸閱讀:關于“Login failed for user'sa’.原因:密碼與所提供的登錄名不匹配。”的解決方式
1、防火墻禁用遠程登錄端口1433規則,缺點是這樣操作無法遠程訪問
2、修改遠程登錄端口1433值
延伸閱讀:關于SQL Server各種錯誤的數字提示
為了增強安全性,返回到客戶端的錯誤消息有意隱藏身份驗證錯誤的本質。但是,在 SQL Server 錯誤日志中,對應的錯誤包含映射到身份驗證失敗條件的錯誤狀態。將錯誤狀態與以下列表進行比較以確定登錄失敗的原因。
狀態 | 說明 |
---|---|
1 | 無法獲得錯誤信息。此狀態通常意味著您不擁有接收錯誤詳細信息的權限。請聯系 SQL Server 管理員以獲得詳細信息。 |
2 | 用戶 ID 無效。 |
5 | 用戶 ID 無效。 |
6 | 嘗試同時使用 SQL Server 身份驗證與 Windows 登錄名。 |
7 | 登錄已禁用,密碼不正確。 |
8 | 密碼不正確。 |
9 | 密碼無效。 |
11 | 登錄有效,但服務器訪問失敗。 |
12 | 登錄是有效的登錄,但服務器訪問失敗。 |
18 | 必須更改密碼。 |
存在其他錯誤狀態,并表示一個意外的內部處理錯誤。
注意: |
---|
如果 SQL Server 使用 Windows 身份驗證模式進行安裝,并隨后更改為 SQL Server 和 Windows 身份驗證模式,則最初禁用?sa?登錄名。這會導致狀態 7 錯誤:“用戶 'sa' 登錄失敗”。要啟用?sa?登錄名,請參閱如何更改服務器身份驗證模式。 |
延伸閱讀:"Login failed for user 'NT AUTHORITY\SYSTEM'. 原因: 無法打開明確指定的數據庫。[客戶端:<local machine>]"異常處理
錯誤原因
(1)出現這2個登錄失敗的問題,都是程序登錄數據庫導致,和數據庫本身沒什么關系,并且和數據庫的補丁也沒有關系;
(2)sa登錄數據庫失敗,這個問題從數據庫層面看,sa用戶本身是沒有問題的,并且該實例下的數據庫都是online狀態,sa是sysadmin權限,是可以訪問該實例下的任何數據庫的,所以即使不配置數據庫映射,也是沒問題的;
解決辦法
(1)NT AUTHORITY\SYSTEM 登錄失敗,可以先禁用,看本地是否有部署什么程序會報錯的,排查一下;
(2)出現這個問題,報出“無法打開明確指定的數據庫”,需要排查這個遠程訪問數據庫的服務器(也就是10.xx.xx.xx)上配置的數據庫連接,是否還有其他的連接,指定的數據庫名稱在該SQLServer實例上沒有,或者以前有,后來刪除的數據庫配置;
果然,最后發現是有數據庫遷移走了,但是程序里還在調用這個數據庫名稱,導致一直報這個錯誤;
根據以上的操作,大致就可以解決相關問題,若還有其他問題,可以在琢磨琢磨或加博主微信(右邊掃一掃)溝通一下!
問題未解決?付費解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!