簡體   English   中英

在用戶的默認數據庫脫機后,如何重新獲得對MS SQL Server的訪問權限?

[英]How can I regain access to MS SQL Server after default database for a user is taken offline?

匆忙行事......

在為備份離線數據庫的過程中我丟失了連接,我唯一的用戶詳細信息被設置為使用我剛剛離線的數據庫(謝天謝地不是master數據庫)作為默認數據庫...問題如你看到的。

在查看堆棧溢出時,我無法找到解決問題的方法。

經過一番挖掘,我記得命令行工具sqlcmd

閑暇時悔改:

那問題的解決方案非常簡單:

  • 打開一個命令行( Start->Run->cmd然后Enter
  • 在命令行中鍵入以下內容(在需要時替換正確的值)
    • sqlcmd -S myserver\\sqlexpress -d master -U myusername -P mypassword ,它啟動與-d之后指定的數據庫的命令行連接
    • 注意 :確保交換機的輸入方式如上所述,因為MS實際上因為區分大小寫而煩惱,因此-s/-S-d/-D-u/-U-p/-P 不可互換。
  • 一旦建立了與數據庫的連接,窗口將顯示類似於的連接提示: 登錄sqlcmd提示符
  • 獲得正確的提示后,在以下位置鍵入以下內容:
    • alter login myusernamehere with default_database = master以設置用戶要使用的默認數據庫
    • 在接下來的線型go ,然后按enter 這應該是您的用戶設置為使用master數據庫作為其連接的默認數據庫。 它應該出現在屏幕上看起來像這樣: 更改用戶的默認數據庫
  • 現在,您可以正常連接MS SQL Server Management Studio,並獲得可用於數據庫管理任務的可愛圖形界面。
  • 執行您的管理任務,並在需要/看到合適時將數據庫重新聯機
  • 通過將上一個命令中的數據庫名稱更改為剛剛重新聯機的數據庫名稱,將用戶的默認數據庫設置回剛剛重新聯機的數據庫,如下所示: 將用戶的默認數據庫恢復到以前的數據庫

這應該是你設定的。 我知道對於大多數人來說這是不太可能出現的情況,但如果發生在您身上,希望這對恢復您的正常訪問並使數據庫重新聯機有一定用處。

另一個選項是在登錄SSMS時單擊“選項”按鈕。 在那里,您可以指定要連接的數據庫。 因此,只要您可以訪問其他數據庫(例如master),就可以進行連接。

謝謝GMasucci,很棒的答案。 我正在使用Windows帳戶,這是我做的。

sqlcmd -d master

然后

alter login [domain\myName] with default_database = master
go
quit

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM