sqlserver錯誤18456原因(sql2005錯誤程式碼18456)

介紹

在本文中,我們將解釋如何修復SQL Server錯誤18456.我們將首先描述錯誤,然後我們將展示使用SQL Server命令,備份或外部軟體解決此SQL Server錯誤的不同方法。

SQL Server錯誤18456

嘗試連線時的典型錯誤訊息如下:

標題:連線到伺服器

無法連線到SERVERNAME

附加資訊:

使用者“使用者名稱”登入失敗。(Microsoft SQL Server,錯誤:18456)

如需幫助,請單擊:http://go.microsoft.com/fwlink?%20SQL%20Server &&&

錯誤18456是典型的登入錯誤。您可能會看到此訊息的原因有多種。在這裡,您有一些可能的原因:

  • 登入不存在或未正確鍵入
  • 使用者忘記了密碼或登入
  • 密碼不正確
  • Windows身份驗證不處於混合模式
  • 惡意黑客重置密碼
  • 病毒會重置所有密碼
  • 遷移了資料庫,但未遷移登入
  • 管理員錯誤地修改了密碼
  • 登入已損壞或主資料庫已損壞

解決方案

這些場景有許多不同型別的解決方案。在這裡,我們將展示最受歡迎的解決方案。

重置密碼

如果您忘記了密碼,可以讓DBA重置您的帳戶。重置密碼的最簡單方法是使用SQL Server Management Studio(SSMS)。轉到安全和登入:

  • 選擇登入,您可以更改密碼:

  • 如果您不喜歡使用SSMS,可以使用T-SQL建立使用者並更改密碼:

USE [master]

GO

ALTER LOGIN [pedro] WITH 'newpassword'

GO

更改Windows身份驗證(Change Windows Authentication)

此錯誤的另一個典型問題是您嘗試使用SQL登入登入,但未啟用SQL登入身份驗證。在SQL Server中有兩種型別的身份驗證:

  • 使用Windows本地或域帳戶登入的Windows身份驗證。此選項是安全的並且建議使用。
  • 混合模式是支援Windows和SQL身份驗證的第二個選項

如果您嘗試使用SQL登入登入,但身份驗證設定為Windows,則會收到錯誤訊息。

您可以使用SSMS更改身份驗證模式。右鍵單擊SQL Server並選擇屬性。在屬性中轉到安全性並將Windows身份驗證更改為SQL Server:

此選項將需要重新啟動SQL Server服務。

如果您不想使用SSMS,還有其他選項可以更改SQL Server身份驗證。

您可以使用登錄檔來修改身份驗證模式。使用regedit更改登錄檔:

machine / HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Microsoft SQL Server / MSSQLXX.MSSQLSERVER / MSSQLServer

  • 更改登入模式值。
  • 2是混合模式。
  • 1是Windows身份驗證。

恆星SQL資料庫工具包

另一種可能的解決方案是使用Stellar SQL Database Toolkit。該軟體包含3個元件。我們將使用SQL密碼恢復從特定登入中恢復密碼。其他工具用於恢復資料庫和備份。我們不會在本文中介紹它們。

下載後,開啟軟體並開啟SQL密碼恢復:

  • 該軟體與SQL Server 2012,2008和2005相容:

  • 該軟體查詢master資料庫。此資料庫儲存登入名和密碼。您可以通過查詢以下檢視來檢索登入資訊:

USE [master]

GO

select * from sys.sql_logins

該軟體將檢視主資料庫資料檔案(master.mdf)並獲取密碼。如您所見,這是一個簡單的過程。