如果備份的數(shù)據(jù)庫(kù)有2個(gè)文件,分別是.LDF 和 .MDF,打開企業(yè)管理器,在實(shí)例上右擊---所有任務(wù)--附加數(shù)據(jù)庫(kù),然后選擇那個(gè).MDF文件,就可以了。 或者在查詢分析器中輸入: sp_attach_db 數(shù)據(jù)庫(kù)名稱,路徑\文件名.ldf,路徑\文件名.MDF SQL Server數(shù)據(jù)庫(kù)備份有兩種方式,一種是使用BACKUP DATABASE將數(shù)據(jù)庫(kù)文件備份出去,另外一種就是直接拷貝數(shù)據(jù)庫(kù)文件mdf和日志文件ldf的方式。下面將主要討論一下后者的備份與恢復(fù)。本文假定您能熟練使用SQL Server Enterprise Manager(SQL Server企業(yè)管理器)和SQL Server Quwey Analyser(SQL Server查詢分析器)
1、正常的備份、恢復(fù)方式 正常方式下,我們要備份一個(gè)數(shù)據(jù)庫(kù),首先要先將該數(shù)據(jù)庫(kù)從運(yùn)行的數(shù)據(jù)服務(wù)器中斷開,或者停掉整個(gè)數(shù)據(jù)庫(kù)服務(wù)器,然后復(fù)制文件。 卸下數(shù)據(jù)庫(kù)的命令:Sp_detach_db 數(shù)據(jù)庫(kù)名 連接數(shù)據(jù)庫(kù)的命令:Sp_attach_db或者sp_attach_single_file_db s_attach_db [@dbname =] 'dbname', [@filename1 =] 'filename_n' [,...16] sp_attach_single_file_db [@dbname =] 'dbname', [@physname =] 'physical_name' 使用此方法可以正確恢復(fù)SQL Sever7.0和SQL Server 2000的數(shù)據(jù)庫(kù)文件,要點(diǎn)是備份的時(shí)候一定要將mdf和ldf兩個(gè)文件都備份下來,mdf文件是數(shù)據(jù)庫(kù)數(shù)據(jù)文件,ldf是數(shù)據(jù)庫(kù)日志文件。 卸下數(shù)據(jù)庫(kù):sp_detach_db 'test' 連接數(shù)據(jù)庫(kù): sp_attach_db 'test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_data.mdf','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.ldf' sp_attach_single_file_db 'test','C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_data.mdf'
2、只有mdf文件的恢復(fù)技術(shù) 由于種種原因,我們?nèi)绻?dāng)時(shí)僅僅備份了mdf文件,那么恢復(fù)起來就是一件很麻煩的事情了。 如果您的mdf文件是當(dāng)前數(shù)據(jù)庫(kù)產(chǎn)生的,那么很僥幸,也許你使用sp_attach_db或者sp_attach_single_file_db可以恢復(fù)數(shù)據(jù)庫(kù),但是會(huì)出現(xiàn)類似下面的提示信息 設(shè)備激活錯(cuò)誤。物理文件名 'C:\Program Files\Microsoft SQL Server\MSSQL\data\test_Log.LDF' 可能有誤。 已創(chuàng)建名為 'C:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.LDF' 的新日志文件。