[SQL Server]無法使用本機管理員帳號登入SQL Server的解決辦法
一般來說,在安裝SQL Server時會選擇採用Windows驗證模式或是混合模式
有的公司會習慣採用Windows整合的驗證方式作為SQL Server的管理與使用帳號,也就是帳號都在AD中管理
在這種情況下,若是SQL Server的網域或是本機管理員帳號無法登入SQL Server時,因為伺服器不是採用混合驗證模式
所以sa帳號是停用的,意謂著基本上是無解了
剛好最近管理的伺服器發生了這樣的問題,本機管理員帳號無法登入SQL Server
經過判斷最有可能的情況,應該是本機登入帳號,從SQL Server的登入清單被移除了,導致無法進行登入
要解決的方式其實很簡單,可以參考 KB937682 如何將 Windows 使用者加入至 SQL Server 2005 中 sysadmin 固定的伺服器角色,做為失敗復原機制
解決的步驟如下:
1.於SQL Server組態管理員中,停止SQL Server的服務
2.在命令提示字元下,切換到[SQL Server安裝目錄\Microsoft SQL Server\MSSQL.X\MSSQL\Binn],並輸入下列的指令
sqlservr.exe -m -c
如果安裝的SQL Server有指定不同的Instance,那就必須輸入
sqlservr.exe –s [InstanceName] -m –c
輸入完之後會出現很多命令在執行,這邊可以先放著不管他,我們可以繼續執行下一個動作
3.於命令提示字元下輸入
sqlcmd –S [ServerName]
ServerName必須是安裝SQL Server的主機名稱
4.於SqlCmd的工作內容中輸入
sp_addsrvrolemember '[Login]', 'sysadmin'
GO
其中Login必須置換成本機或是網域管理員,又或是你希望加入至SQL Server sysadmin角色的網域帳號
5.此時再回到剛剛執行sqlserver.exe –m -c的命令提示字元畫面,並按下Ctrl+c,選擇shutdown SQL Server
6.於SQL Server組態管理員中,啟動SQL Server的服務 7.恭喜,已經可以正常進入SQL Server,並可以看到該帳號已經列入登入帳號 ,而該帳號也加入了sysadmin角色中了