如何還原某一個目錄下的所有數據庫備份文件(1) |
發布時間: 2012/6/16 21:35:38 |
引述
●根據備份文件找出數據庫名 在還原數據庫的開始,我們先要知道把備份數據庫文件還原到哪一個數據庫上。在真實世界中,我們無法保證備份數據庫文件都為”數據庫名+.bak”格式 (如:myDB.bak,其中myDB就是數據庫名)。通常情況,只知道備份文件,需要知道數據庫名,我們可以通過SQL Server提供的T-SQL語句“Restore HeaderOnly”來找出原來的數據庫名,簡單語法這樣:Restore HeaderOnly From 返回的結果集中,有一列”DatabaseName”描述備份的數據名。通過”DatabaseName”列,就可以找出我們需要的原來數據庫名了。 e.g.
【注:】在結果集中, SQL Server 2008/R2 比 SQL Server 2005 多一個列”CompressedBackupSize”。 ●根據備份文件找出數據、日志列表 接下來,我們需要知道備份文件中包含哪些數據、日志文件,及要知道原來的文件路徑是什么。要是原來的數據庫文件存儲路徑與新路徑不一致,我們需要在”Restore Database …” 里面使用” Move”選項。這里我們可以通過使用SQL Server 提供的T-SQL語句”Restore FileListOnly”,返回數據庫和日志文件列表組成的結果集,簡單語法這樣:Restore FileListOnly From <backup_device> e.g.
【注:】在結果集中, SQL Server 2008/R2 比 SQL Server 2005 多一個列”TDEThumbprint”,應用于顯示數據庫加密密鑰的指紋。 ●構造還原數據庫SQL語句 上面兩點內容,我們根據備份文件,知道了要還原的數據庫名和數據庫文件列表,那么,我們基本可以構造出還原數據庫的SQL語句了。 e.g.
本文出自:億恩科技【www.vbseamall.com】 |