2013-07-26 141 views
1

我有一個數據庫tempdb分爲8個文件。有3個mdf和5個ndf文件。SQL Server臨時數據庫還原

我需要通過備份和恢復來移動這個數據庫。我需要確保我恢復這些文件嗎?如果我不這樣做,恢復是否會重新創建tempdb文件?如果是這樣,它只會重新創建一個,還是維持當前的配置?

感謝

+4

沒有必要(或重複)備份和恢復tempdb。簡單地編寫定義並在新服務器上運行 –

+3

甚至不可能備份或恢復'tempdb'。每次在服務器啓動時都會自動重新創建,使用您之前爲其設置的任何文件配置。 –

回答

1

無法通過備份tempdb的移動和恢復,你應該使用ALTER DATABASE來代替。

抓鬥通過以下查詢的文件的名稱:

SELECT name, physical_name AS CurrentLocation 
FROM sys.master_files 
WHERE database_id = DB_ID(N'tempdb'); 
GO 

然後,使用類似於以下(使用第一查詢的輸出作爲參考)

USE master; 
GO 
ALTER DATABASE tempdb 
MODIFY FILE (NAME = tempdev, FILENAME = 'E:\SQLData\tempdb.mdf'); 
GO 
ALTER DATABASE tempdb 
MODIFY FILE (NAME = templog, FILENAME = 'F:\SQLLog\templog.ldf'); 
GO 
查詢改變它們的位置

重新啓動SQL服務器,新文件將在新位置重新創建,然後您可以刪除舊文件。

相關問題