Windows-Server-2003

在不執行服務的情況下配置 SQL-SERVER

  • August 30, 2011

是否可以在不啟動 SQL-Server 的情況下更改 temp.mdf 或其他文件的位置?

我想重新啟動一台舊伺服器,但其中一個 USB 硬碟已在其他地方使用。現在我無法在配置管理器中啟動 SQL-Server 服務。

事件日誌具有以下條目:

Event Type: Error
Event Source:   MSSQLSERVER
Event Category: (2)
Event ID:   17207
Date:       30.08.2011
Time:       15:53:10
User:       N/A
Computer:   SQLSERV
Description: 

FCB::Open: 創建或打開文件“M:\temp.mdf”時出現作業系統錯誤 3(未找到錯誤)。診斷並更正作業系統錯誤,然後重試操作。

以下是有關此錯誤的資訊。

**問:**那麼如何在不啟動 SQL-SERVER 服務的情況下更改引用非現有驅動器的數據庫文件的位置?我還沒有在配置管理器中看到一個選項。或者 SQL-Server 中是否存在某種“安全模式”?

我假設它不僅是您的 temp.mdf,而且您的所有其他系統數據庫也都失去了……

有一種安全模式,叫做"master-only recovery mode". 您是否可以使用它取決於您是否從失去的硬碟驅動器中備份了數據庫。

如果您有數據庫實例“data”文件夾的備份,那麼本文在“故障恢復過程”部分中有一些有用的資訊。我還將查看“移動主數據庫和資源數據庫”部分。您是否可以在沒有啟動 sql server 的情況下按照此步驟操作?

如果沒有,您可以使用啟動選項。sql server 程序具有用於指定備用主數據庫位置的啟動選項。您還可以在此處更改系統資料庫中的啟動選項:(HKLM\Software\microsoft\microsoft sql server\MSSQL.1\mssqlserver\parameters 假設這是您安裝的第一個或唯一一個數據庫實例)。

如果您沒有數據文件夾的備份,那麼您應該查看重建主數據庫,這涉及使用原始安裝日誌再次執行 sql 伺服器設置。

編輯:它只是失去硬碟上的 tempdb 嗎?如果是這樣,您可能能夠進入僅主恢復模式並移動臨時數據庫,如“故障恢復過程”步驟 1-2下的第一個連結中所述。然後按照如何移動底部的tempdb的範例進行操作。

引用自:https://serverfault.com/questions/306447