2005資料庫恢復
1. 在SQL Server Management Studio中隨便創建一個資料庫,例如:PVLink。
2. 停止SQL Server服務。
如果不停止此服務,剛才創建的PVLink資料庫將即不能被拷貝,也不能被覆蓋。
3. 把已經損壞的資料庫的mdf文件拷貝並覆蓋剛才新建的資料庫產生的mdf文件。
4. 啟動SQL Server服務。
此時可以看見剛才創建的PVLink資料庫名字後面沒有加號,無法察看其任何信息,其實目前它已經處於無法使用的狀態。
5. 把資料庫設置為緊急狀態。
通過在「查詢分析器」中執行:alter database PVLink set EMERGENCY 可以將資料庫設置為緊急狀態,此時資料庫PVLink的圖標改變成粉紅色並出現「緊急」字樣。
6. 將資料庫設置為單用戶模式。
如果不設置為單用戶模式,我們將無法使用帶有效repair選項的DBCC CHECKDB來檢查/修復資料庫,SQL Server 2005設置單用戶模式比SQL Server 2000容易,只要在「查詢分析器」中執行:
use master
go
sp_dboption 'PVLink',single,true
即可。
7. 修復資料庫
修復資料庫主要使用DBCC來*作,一般來講,我們可以使用以下三個選項來修復:
REPAIR_ALLOW_ DATA_LOSS
嘗試修復報告的所有錯誤。這些修復可能會導致一些數據丟失。
REPAIR_FAST
僅為保持向後兼容性而保留。
REPAIR_REBUILD
執行由 REPAIR_FAST 執行的所有修復,包括需要較長時間的修復(如重建索引)。執行這些修復時不會有丟失數據的危險。
一般我們通過執行:DBCC CHECKDB('PVLink',REPAIR_REBUILD) 即可完成修復工作,此時 SQL Server 2005會給出很多提示,因為這個過程可能會導致一些資料庫設計或者數據的丟失,並且在這個過程中,會產生新的以ldf為擴展名的資料庫日誌文件。
8. 完成以上的步驟後,一般情況下資料庫應該可用了,如果資料庫此時仍然是緊急狀態,可以通過:alter database PVLink set ONLINE ,把資料庫變成在線狀態。
以上介紹的方法對於通過「附加」的方法無法恢復受到比較嚴重損壞的資料庫比較有效,總的來看,SQL Server 2005給資料庫管理和開發提供了更加有效實用的工具和方法。
❷ sql2005備份資料庫怎麼恢復
資料庫數據恢復步驟
1、通過日誌恢復SQLSERVER2005數據(也可通過LogExplorer工具查找進行恢復數據)
(A)......通過日誌和時間點來恢復數據的前提條件:資料庫的故障恢復改為非簡單模式,去掉自動關閉和自動收縮兩個選項,如果是簡單模式:類似下面的語句操作數據就不會記錄到日誌中:select*intotfrom[表名].【採用LogExplorer工具可以在線操作,通過恢復日誌(指定時間點恢復)來恢復數據,必須停止資料庫或者再另一個資料庫恢復(前提是必須有一個完全備份和日誌備份)】
這時為保證數據的完整要將資料庫的恢復模式改成「完整.
1.1、這時對資料庫事務日誌做備份(注意,如果沒做個資料庫完整備份,是不能做事務日誌備份的)
這時新建一個資料庫zp(將以前的資料庫改名),恢復資料庫
這時我們看到,有兩個還原的資料庫備份,因為我對zp資料庫備份了兩次,兩次的備份的數據文件都一樣。這里我們選擇最近時間的備份默認在資料庫的設置如下:是追加到備份集里,所以會有兩個備份。
同時,在」選項「里設置」不回滾「事務,
注意:通過事務日誌還原資料庫,必須選擇"不回滾"事務
確定後:出現下面情況:
這時發現,資料庫一直是」正在還原「,這時還原資料庫事務日誌,
1.2、「常規」里選擇時間,(剛刪除的時間)
1.3、「選項」里將恢復狀態設置為」回滾未提交「事務
確定後,查詢資料庫,發現數據回來了.
2、無日誌的數據恢復
2.1.新建一個同名的資料庫
2.2再停掉sqlserver(注意不要分離資料庫)
2.3用原資料庫的數據文件覆蓋掉這個新建的資料庫
2.4再重啟sqlserver
2.5此時打開企業管理器時會出現置疑,先不管,執行下面的語句(注意修改其中的資料庫名)
2.6完成後一般就可以訪問資料庫中的數據了,這時,資料庫本身一般還要問題,解決辦法是,利用
資料庫的腳本創建一個新的資料庫,並將數據導進去就行了.
USEMASTER
SP_CONFIGURE'ALLOWUPDATES',1RECONFIGUREWITHOVERRIDE
UPDATESYSDATABASESSETSTATUS=32768WHERENAME='資料庫名'
sp_dboption'資料庫名','singleuser','true'
DBCCCHECKDB('資料庫名')
updatesysdatabasessetstatus=28wherename='資料庫名'
sp_configure'allowupdates',0reconfigurewithoverride
sp_dboption'資料庫名','singleuser','false'
❸ 2005 資料庫文件 怎樣還原sq lserver2012
一、最簡單的回答:
1、高版本備份的數據不能直接在低版本上還原,得利用腳本來實現。
2、存在大量數據的資料庫,比如資料庫中存在記錄數過萬條的數據表,實現起來可能非常慢,且可能出錯,沒法進行下去。
二、請參考SQL Server2008數據導入到SQL Server2005具體方法:
1、打開SQL Server2008「對象資源管理器」;
2、右擊資料庫,如:cadERP的資料庫,選擇「任務」--「生成腳本」;
3、打開生成和腳本發生窗口後點擊「下一步」;
4、進入「選擇特定資料庫對象」,選擇「全選」表--「下一步」;
5、進入「設置腳本編寫選項」,選擇「高級」--找到「為伺服器版本編寫腳本」項選擇「SQL Server 2005」--「下一步」完成;
6、此時打開SQL Server2005,創建一個和SQL2008生成的腳本文件名相同的資料庫,選擇「新建查詢」,把SQL2008生成的腳本文件直接拖到新建查詢窗口中,執行「F5」。
這個時候SQL Server2005中的數據和SQL Server2008中的數據就完全相同啦。