原來剛學數據庫的時候,不知道數據庫的備份和還原,就直接去拷貝數據庫mdf和ldf文件,后來會了數據庫的備份和還原,一直也就沒有注意拷貝mdf和ldf帶來的問題。
現在需要參考原來拷貝的代碼和數據庫(拷貝的mdf和ldf文件),結果發現數據庫還原不上了。我就在百度搜索,出來了不少相關網頁,打開后發現基本都是一個相同解決方案,列出ABCDEFG或者12345幾項去解決,可惜,不成功。那就繼續搜索,幸好在微軟的MSDN網站上找到了類似的文檔,通過分離和附加來移動數據庫。我是個菜鳥,不知道什么是分離、附加數據庫,汗顏,粗略看了一下,似懂非懂,不過發現了附加移動的數據庫就是通過mdf和ldf文件恢復(創建)數據庫。我試了一下,居然一下成功,相當的簡單。
1、把mdf文件和ldf文件拷貝到數據庫的默認路徑C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA里;
2、在sqlserver里新建個查詢,執行下面代碼;
1 USE master; 2 GO 3 CREATE DATABASE NewFile 4 ON (FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\File.mdf'), 5 (FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\File_log.ldf') 6 FOR ATTACH; 7 GO
3、刷新數據庫,就出現了新的數據庫NewFile;
根據mdf文件和ldf文件還原成功,就這么簡單。我用的是sqlserver2008