2010-09-23 55 views
36

我已經安裝了SQL Server 2008 Express並通過Windows身份驗證登錄,它不允許我執行任何操作。我如何更改'sa'密碼或在本地計算機2008 Express中獲得完整權限?我使用Windows 7如何在SQL Server 2008 Express中更改sa密碼?

+0

是您的用戶帳戶管理員帳戶?另請參閱以下鏈接:http://ashrafur.wordpress.com/2008/01/04/set-sa-password-using-sql-server-management-studio/ – Fosco 2010-09-23 18:25:11

+1

您是否啓用了混合模式身份驗證(並選擇了SA密碼)在安裝? – 2010-09-23 18:27:16

+0

我不記得,它不允許我做任何事情 – ktm 2010-09-23 19:12:04

回答

32

您需要按照Troubleshooting: Connecting to SQL Server When System Administrators Are Locked Out描述的步驟,並添加自己的Windows用戶爲系統管理員的成員:

  • 關機MSSQL $快遞服務(或任何你的SQL的名字快遞服務)
  • 開始添加-m-f啓動參數(或者你可以從控制檯啓動sqlservr.exe -c -sEXPRESS -m -f
  • 連接到DAC:sqlcmd -E -A -S .\EXPRESS或SSMS使用admin:.\EXPRESS
  • 運行create login [machinename\username] from windows在SQL
  • 創建Windows登錄
  • 運行sp_addsrvrolemember 'machinename\username', 'sysadmin';使urself系統管理員成員
  • 重啓服務W/O的-m -f
+5

我不得不使用跟蹤選項啓動sql服務以使其工作,並且還關閉了任何可能嘗試連接到SQL Express的服務(例如Ektron索引服務):'sqlservr.exe -c -sSQLEXPRESS -m -f -T 7806',然後我使用'。\ sqlexpress'作爲服務器名稱連接到SSMS – Dan 2012-01-13 16:41:21

+4

確保你在高級模式下運行你的SSMS,否則你可能得不到連接。 – Rashack 2013-11-20 09:51:57

+0

@Rashack評論是非常重要的一點,否則如果您沒有以管理員身份運行,您的連接將失敗。 – pdwalker 2018-01-23 05:31:01

58

如果你想與SQL改變你的 '山' 密碼Server Management Studio中,這裏的步驟:利用了W

  1. 登錄 INDOWS認證和 「\的SQLExpress。」 作爲服務器名稱
  2. 更改服務器身份驗證模式 - 右鍵單擊​​根,選擇屬性,從安全性選項卡中選擇 「SQL Server和Windows身份驗證模式」,然後單擊確定 Change server authentication mode

  3. 設置sa密碼 - 導航到安全性>登錄> SA,右擊它,選擇屬性,從設置密碼常規選項卡(不要關閉窗口) Set sa password

  4. 授予權限 - 進入狀態選項卡,確保格蘭特和啓用單選按鈕進行選擇,從當地的服務(窗口+ R> Services.msc)中

  5. 單擊確定 Grant permission

  6. 重新啓動SQLEXPRESS服務

+5

這隻適用於您有權更改密碼的情況。 – Aaron 2013-08-14 18:24:41

+4

謝謝..我只是在尋找這個.. – Pranav 2013-09-14 08:21:09

+1

如果我在步驟2中得到「用戶沒有更改認證模式的憑據」會怎麼樣? – 2013-09-17 12:07:39

1

我不知道現有的sa密碼,所以這是我做過什麼:

  1. 打開服務控制面板

  2. 找到 「SQL服務器(SQLEXPRESS)」 項,然後選擇屬性

  3. 停止服務

  4. 輸入 「-m」,在 「啓動參數」 的字段的開始。如果還有其他參數,則在-m之後已經添加了一個分號;

  5. 啓動服務

  6. 打開命令提示符

輸入以下命令:

osql -S YourPcName\SQLEXPRESS -E 

(其他城市YourPcName到無論你的電腦的稱呼)。

  • 在提示類型以下命令:
  • alter login sa enable 
    go 
    sp_password NULL,'new_password','sa' 
    go 
    quit 
    
  • 停止「SQL服務器( SQLEXPRESS)「服務

  • 從開始參數字段中刪除」-m「

  • 啓動服務

  • 3

    這是對我工作:

    • 關閉所有的SQL Server應用程序引用。
    • 在控制面板中打開服務。
    • 找到「SQL Server(SQLEXPRESS)」條目並選擇屬性。
    • 停止服務(所有Sql Server服務)。
    • 輸入「-m」在啓動參數」的字段。
    • 啓動服務(點擊在常規選項卡開始按鈕)。
    • 打開命令提示符(右鍵單擊,如果需要以管理員身份運行)。
    • 輸入命令:

      OSQL -S本地主機\ SQLEXPRESS -E

      (或localhost更改無論你的電腦的稱呼)

    • 個在提示類型以下命令:

      CREATE LOGIN my_Login_here WITH PASSWORD = 'my_Password_here'

      sp_addsrvrolemember 'my_Login_here', '系統管理員'

      退出

    • 停止「SQL Server(SQLEXPRESS)」服務。

    • 從開始參數字段中刪除「-m」(如果仍然存在)。

    • 開始服務。

    • 在Management Studio中,使用您剛剛創建的登錄名和密碼。 這應該給它管理員權限。

    2

    這可以幫助你的SQL 2008和2012

    EXEC sp_password的NULL重置您的sa密碼, '你的密碼', '山'