from :
對於資料庫來說,備份和還原無疑是非常重要的。今天就在自己的機器上學習並操作了一下,總結一下。
我用的是2005,今天先總結的是完整資料庫備份和還原。
1、首先先建立備份裝置
exec sp_addumpdevice 'disk', 'myback1', 'd:\backup\myback1.bak'
goexec sp_addumpdevice 'disk', 'myback2', 'd:\backup\myback2.bak'
go2、完整備份資料庫test
backup database test
to myback1,myback2
with init,name='test_fullbackup_20090521'
在with選項裡面中,有兩個要注意的選項是init和format,使用這兩個選項都會破壞備份裝置中已經存在的備份,而且使用的時候兩個不能同時使用。選項name指定備份的名稱,建議使用,不然到時還原的時候就不知道哪個是哪個了。還可以用選項medianame指定備份**的名稱,一般不需要。
3、差異備份資料庫test
在對資料庫做了更改後,可以對資料庫進行差異備份。
backup database test
to myback1,myback2
with differential,name='test_fulldiff_20090521'
4、備份資料庫test日誌
backup log test
to myback1,myback2
with name='test_logbackup_20090521'
可以將日誌和資料備份到同乙個備份裝置,但在實際運用中為了效能等因素,一般是將日誌和資料備份到不同裝置。
在上一次備份日誌之後,如果做了什麼錯誤更改或變動,不得不還原資料,如果直接還原的話,將會報錯,
所以在還原之前,請先做乙個尾日誌備份,
尤其是在系統發生故障的時候,如果可能,應該馬上進行尾日誌備份,以幫助還原到故障點時的狀態。
backup log test
to myback1,myback2
with name='test_log_tailbackup_20090521'
以上所做的備份均會在系統資料庫msdb中的系統表backupset留下記錄,可以用一下語句檢視:
上圖是我做測試時的結果,position顯示檔案的位置,還原時用得到,name就是備份的名稱,type就是備份的型別,d表示資料庫,i表示差異,l表示日誌。
4、還原資料庫test
還原的時候請注意,因為想將資料庫的狀態還原到備份尾日誌之前的狀態,所以還原的時候不要還原尾日誌,不然會出錯的,或者等於沒有還原。
use master
gorestore database test #還原完整的資料庫備份,檔案位置1,顯示指定norecovery允許進一步還原資料。
from myback1,myback2
with file=1,norecovery
gorestore database test #還原差異備份
from myback1,myback2
with file=2,norecovery
gorestore log test #還原日誌,在尾日誌之前有多少日誌備份,都要還原。
from myback1,myback2
with file=3,recovery #recovery將資料庫恢復到聯機狀態。
go完整資料庫備份+差異備份+日誌備份是現實應用常用的,其備份策略一般如下:
(1)每週六晚上對資料庫進行一次完整備份。
(2)每週三晚上對資料庫進行差異備份。
(3)每隔30分鐘進行一次事務日誌備份。
可以使用「資料庫維護計畫嚮導」設計為自動執行這一備份策略。備份時應該保證備份有幾份拷貝,並放於不同的位置,另外還應該測試一下備份的可用性,保證在還原的時候不出錯。
轉 SQL的完整備份和還原
from 對於資料庫來說,備份和還原無疑是非常重要的。今天就在自己的機器上學習並操作了一下,總結一下。我用的是2005,今天先總結的是完整資料庫備份和還原。1 首先先建立備份裝置 exec sp addumpdevice disk myback1 d backup myback1.bak goexe...
SqlServer 完整備份與還原
建立資料庫與建表等操作請參考這裡 sqlserver 建立資料庫 使用多個檔案組和物理磁碟 下圖是備份前的資料情況,其中customer表中一共四條記錄 下面開始執行完全備份,參考 sqlserver 備份資料庫 按時間命名備份檔案 備份之後可以看到備份目錄下已經生成的bak檔案 下面對custom...
SQL資料庫備份1 完整備份
完整備份 完整備份資料庫到物理備份裝置 backup database studb to disk e bak studb all.bak go 完整備份資料庫到邏輯備份裝置 backup database studb to bk bk e bak studb 邏輯備份.bak go 備份的驗證與校...