SQL Server備份策略 SQL Server 使用腳本來(lái)備份 數(shù)據(jù)庫(kù)備份策略
發(fā)表時(shí)間:2023-09-14 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]軟件等級(jí):更新時(shí)間:2016-11-11版本號(hào):v5.7.10 MySQL Server x64官方正式版免費(fèi)下載立即下載 SQL Server備份策略 SQL Server 使用腳本來(lái)備份 數(shù)據(jù)庫(kù)備份策略雖然server 是有數(shù)據(jù)庫(kù)備份工具來(lái)備份,但是不能自定義備份,比如我們備份后還...
SQL Server備份策略 SQL Server 使用腳本來(lái)備份 數(shù)據(jù)庫(kù)備份策略雖然server 是有數(shù)據(jù)庫(kù)備份工具來(lái)備份,但是不能自定義備份,比如我們備份后還要把備份的數(shù)據(jù)庫(kù)copy到另一臺(tái)server,等等以及我們想做的一些事情。
這時(shí)我們就可以用腳本來(lái)實(shí)現(xiàn)備份機(jī)制,下面簡(jiǎn)單的介紹一下備份策略吧。
1.硬件的支持
1.在一個(gè)完整的應(yīng)用系統(tǒng)中需要準(zhǔn)備3臺(tái)服務(wù)器來(lái)做容災(zāi)和系統(tǒng)的性能,簡(jiǎn)單來(lái)介紹一下為什么需要3臺(tái)。
1.>第一臺(tái)不用想就是我們給用戶當(dāng)前用的,第二就是我們隨時(shí)待命的,如果life 掛了馬上頂上去,第三就是歷史數(shù)據(jù)。
說(shuō)到這里怎么去關(guān)聯(lián)這三臺(tái)服務(wù)呢?
就是通過(guò)計(jì)劃任務(wù)通過(guò)腳本來(lái)之執(zhí)行的。
有了硬件的支持,那我們的想一下執(zhí)行備份的計(jì)劃。
2.備份的計(jì)劃
1.完整備份:每周一個(gè)完整備份。
2.差異備份:每天一個(gè)差異備份。
3.日志備份:每小時(shí)一個(gè)差異備份。
有了硬件也計(jì)劃,我們就來(lái)談一下怎么關(guān)聯(lián)了。
3.系統(tǒng)關(guān)聯(lián)
1.我們把每周的完整備份Copy到待命服務(wù)里去還原(用腳本來(lái)實(shí)現(xiàn)),還有差異備份,最后到放到凌晨。同時(shí)設(shè)為只讀狀態(tài)。這樣我們的待命服務(wù)器就跟當(dāng)前服務(wù)器就支持從凌晨到現(xiàn)在的數(shù)據(jù)庫(kù)。那么一旦發(fā)生意外,我們就只要恢復(fù)從凌晨到現(xiàn)在的日志就可以馬上可以用了。
2.當(dāng)前跟歷史的關(guān)聯(lián),每天備份不再使用的數(shù)據(jù)庫(kù)到歷史庫(kù),這樣就可以減少當(dāng)前數(shù)據(jù)庫(kù)的壓力。
4.主要代碼
1.完整備份,和拷貝文件到待命服務(wù)器(standy) ,差異備份一樣只是在備份語(yǔ)句加上with init,differential
Declare @FULLFileName varchar(200)
Declare @FileFlag varchar(200)
Set @FileFlag=''20''+convert(char(6),getdate(),12)
Set @FULLFileName=''D:\SQLDataB\DB_FULL''+@FileFlag+''.BAK''
BackUp DataBase DBName To Disk=@FULLFileName with init
Go
//刪除就文件
Declare @BKFileName varchar(200)
Declare @FileFlag varchar(8)
Declare @SQLStr varchar(300)
Set @FileFlag=''20''+convert(char(6),getdate()-14,12)
Set @BkFileName=''\\172.16.1.1\d$\BACKUP\DB_FULL''+@FileFlag+''.BAK''
Set @SQLStr=''Del ''+@BKFileName
Print @SQLStr
Execute Master..xp_cmdshell @SQLStr
Go
--Copy backup file to remote server
Declare @BKFileName varchar(200)
Declare @DestFileName varchar(200)
Declare @FileFlag varchar(8)
Declare @SQLStr varchar(300)
Set @FileFlag=''20''+convert(char(6),getdate(),12)
Set @BkFileName=''D:\SQLDataBK\DB_FULL''+@FileFlag+''.BAK''
Set @DestFileName=''\\172.16.1.1\d$\BACKUP\WIN\''
Set @SQLStr=''copy ''+@BKFileName+'' ''+@DestFileName
--Set @SQLStr=''d:\robocopy D:\SQLDataBK\ ''+@DestFileName+'' DB_FULL''+@FileFlag+''.BAK /TBD /R:200 /COPY:DAT /Z''
Print @SQLStr
Execute Master..xp_cmdshell @SQLStr
2.還原的方式跟備份時(shí)逆進(jìn)程,這里就不說(shuō)了
本技術(shù)文檔屬于www.6down.net 專有,如要轉(zhuǎn)載請(qǐng)附上來(lái)源于www.6down.net ,請(qǐng)尊重個(gè)人成果。
有困難可以聯(lián)系我,主頁(yè)有我的QQ
常見(jiàn)的網(wǎng)絡(luò)操作系統(tǒng)有UNIX、Netware、Windows NT、Linux等,網(wǎng)絡(luò)軟件的漏洞及缺陷被利用,使網(wǎng)絡(luò)遭到入侵和破壞。