這幾天在講SQL Server 的課程今天頭一天因為主辦方准備的環境是用做好的同一個虛擬機然後分發到很多台實驗用的機器後用sysprepare這種工具修改了電 腦名稱一早就遇到大家無法登錄到SQL Server的問題不管是用本地管理員還是SA帳號
首先從Windows身份驗證方式登錄
右鍵點擊“服務器”選擇“屬性”
在左側找到“安全性”裡面有個Windows身份登錄還有一個“SQL Server和Windows身份驗證”選擇第二個
重啟SQLSERVER服務(還是右鍵點擊“服務器”就是根節點選擇重啟服務器
我分析下來本地管理員無法登錄的原因就是因為電腦名稱修改了之後現在的本地管理員的SID已經不是修改之前那個本地管理員的SID了而SQL Server裡面其實保存的是SID並不是用戶名稱所以導致他無法登錄服務器而至於用SA帳號無法登錄是因為主辦方在准備這個環境的時候並沒有 啟用混合驗證模式
大致的步驟就是
用本地管理員登錄停止SQL Server服務
修改SQL Server服務的啟動參數在原先的啟動參數後面添加 “;m”(不要帶雙引號)這是將SQL Server設置進入單用戶模式
啟動SQL Server服務使用sqlcmd登錄到SQL Server服務器
執行exec sp_addsvrrolemember ‘MachineNameAdministrator’ ‘sysadmin’;GO;(請注意紅色部分要替換為你的本地管理員帳號)
停止SQL Server服務將原先添加的啟動參數“m”刪除掉
啟動SQL Server服務
建議大家安裝SQL Server的時候還是設置混合驗證模式和SA密碼然後要保護好這個密碼
From:http://tw.wingwit.com/Article/program/SQLServer/201311/22301.html