sql server備份方法一覽
作為一個sql server的用戶,sql server備份是需要學(xué)習(xí)的,下面就將為您介紹sql server備份的方法,供您參考,希望對你學(xué)習(xí)SQL數(shù)據(jù)庫有所幫助。
為了減少數(shù)據(jù)庫服務(wù)器出問題導(dǎo)致數(shù)據(jù)掉失,一般都要進(jìn)行sql server備份,視對數(shù)據(jù)的重要性和性能的折中采用不同的sql server備份方案。
一般備份方案為:
全局備份(一周一次)+增量備份(一天一次)+事務(wù)日志備份(兩小時一次,視對數(shù)據(jù)的重視情況而選擇)
這樣的話即使出現(xiàn)問題,數(shù)據(jù)掉失的范圍是兩個小時。
全局備份:
- declare @backPath nvarchar(1000)
- set @backPath = N'C:\Program Files\Microsoft SQL Server\MSSQL.4\MSSQL\Backup\TestDB\TestDB_backup_200907281015.bak'
- declare @backName nvarchar(200)
- set @backName = N'TestDB_backup_20090728101556'
- BACKUP DATABASE [TestDB] TO DISK = @backPath
- WITH NOFORMAT, NOINIT, NAME = , SKIP, REWIND, NOUNLOAD, STATS = 10
增量備份:
- declare @backPath nvarchar(1000)
- set @backPath = N'C:\Program Files\Microsoft SQL Server\MSSQL.4\MSSQL\Backup\TestDB\TestDB_backup_200907281017.bak'
- declare @backName nvarchar(200)
- set @backName = N'TestDB_backup_20090728101729'
- BACKUP DATABASE [TestDB] TO DISK = @backPath
- WITH DIFFERENTIAL , NOFORMAT, NOINIT, NAME = @backName, SKIP, REWIND, NOUNLOAD, STATS = 10
增量備份的時候把日志進(jìn)行截斷,防止日志過大
- --截斷事務(wù)日志:
- Backup Log Northwind
- With No_Log
- --收縮日志文件:
- dbcc shrinkdatabase(Northwind)
對事物日志進(jìn)行備份
- Backup Log NorthwindCS
- To disk='G:\Backup\NorthwindCS_Log_20070908.bak'
- With No_Truncate
針對不同頻率做相應(yīng)的作業(yè)操作。
如果同一服務(wù)器上有不同的數(shù)據(jù)庫,對各個數(shù)據(jù)進(jìn)行上面的作業(yè)明顯不合適,這樣可以用sql server2005的維護(hù)計劃來實現(xiàn)對所有數(shù)據(jù)庫的維護(hù)操作。