关于SQLSERVER备份

关于SQLSERVER备份--首先介绍2个查看数据库日志使用情况很有用的语句:
--DBCC SQLPERF (LOGSPACE)
--DBCC LOGINFO('ZZTZ')

--确认SQLSERVER处于完全恢复模式
--确认SQLSERVER AGENT启动。
--1、每周日凌晨一点开始执行数据库全备份。
--2、每天凌晨四点开始执行数据库增量备份。
--3、每天下午三点开始执行数据库日志备份。


--1、全库备份(同时备份MASTER)
USE MSDB
EXEC SP_ADD_JOB @JOB_NAME = 'ZZTZ_BACKUP_FULL',
@ENABLED = 1,
@DESCRIPTION = '全库备份',
@START_STEP_ID = 1,
@OWNER_LOGIN_NAME = 'SA'
DECLARE @BACKUPCOMMAND VARCHAR(300)
SELECT @BACKUPCOMMAND = 'DECLARE @FILE VARCHAR(100)
SELECT @FILE = ''E:SQLSERVERBACKUP''+CONVERT(VARCHAR,GETDATE(),12)+''ZZTZ_BACKUP_FULL''
BACKUP DATABASE ZZTZ TO DISK = @FILE WITH INIT
SELECT @FILE = ''E:SQLSERVERBACKUP''+CONVERT(VARCHAR,GETDATE(),12)+''MASTER''
BACKUP DATABASE MASTER TO DISK = @FILE WITH INIT'

EXEC SP_ADD_JOBSTEP @JOB_NAME = 'ZZTZ_BACKUP_FULL',
@STEP_NAME = 'ZZTZ_BACKUP_FULL',
@SUBSYSTEM = 'TSQL',
@COMMAND = @BACKUPCOMMAND ,
@DATABASE_NAME='ZZTZ'
GO

EXEC SP_ADD_JOBSCHEDULE @JOB_NAME = 'ZZTZ_BACKUP_FULL',
@NAME = 'ZZTZ_BACKUP_FULL' ,
@FREQ_TYPE = 8,
@FREQ_INTERVAL = 1,
@FREQ_RECURRENCE_FACTOR = 1,
@ACTIVE_START_TIME = 10000
GO

EXEC SP_ADD_JOBSERVER
@JOB_NAME='ZZTZ_BACKUP_FULL',
@SERVER_NAME='(LOCAL)'

--2、增量备份(同时备份MSDB)
USE MSDB
EXEC SP_ADD_JOB @JOB_NAME = 'ZZTZ_BACKUP_DIFFERENTIAL',
@ENABLED = 1,
@DESCRIPTION = '增量备份',
@START_STEP_ID = 1,
@OWNER_LOGIN_NAME = 'SA'

DECLARE @BACKUPCOMMAND VARCHAR(300)
SELECT @BACKUPCOMMAND = 'DECLARE @FILE VARCHAR(100)
SELECT @FILE = ''E:SQLSERVERBACKUP''+CONVERT(VARCHAR,GETDATE(),12)+''ZZTZ_BACKUP_DIFFERENTIAL''
BACKUP DATABASE ZZTZ TO DISK = @FILE WITH DIFFERENTIAL
SELECT @FILE = ''E:SQLSERVERBACKUP''+CONVERT(VARCHAR,GETDATE(),12)+''MSDB''
BACKUP DATABASE MSDB TO DISK = @FILE WITH INIT'

EXEC SP_ADD_JOBSTEP @JOB_NAME = 'ZZTZ_BACKUP_DIFFERENTIAL',
@STEP_NAME = 'ZZTZ_BACKUP_DIFFERENTIAL',
@SUBSYSTEM = 'TSQL',
@COMMAND = @BACKUPCOMMAND ,
@DATABASE_NAME='ZZTZ'
GO

EXEC SP_ADD_JOBSCHEDULE @JOB_NAME = 'ZZTZ_BACKUP_DIFFERENTIAL',
@NAME = 'ZZTZ_BACKUP_DIFFERENTIAL' ,
@FREQ_TYPE = 4,
@FREQ_INTERVAL = 1,
@ACTIVE_START_TIME = 40000
GO


EXEC SP_ADD_JOBSERVER
@JOB_NAME='ZZTZ_BACKUP_DIFFERENTIAL',
@SERVER_NAME='(LOCAL)'

--3、日志备份
USE MSDB
EXEC SP_ADD_JOB @JOB_NAME = 'ZZTZ_BACKUP_LOG',
@ENABLED = 1,
@DESCRIPTION = '日志备份',
@START_STEP_ID = 1,
@OWNER_LOGIN_NAME = 'SA'

DECLARE @BACKUPCOMMAND VARCHAR(300)

SELECT @BACKUPCOMMAND = 'DECLARE @FILE VARCHAR(100)
SELECT @FILE = ''E:SQLSERVERBACKUP''+CONVERT(VARCHAR,GETDATE(),12)+''ZZTZ_BACKUP_LOG''
BACKUP LOG ZZTZ TO DISK = @FILE'

EXEC SP_ADD_JOBSTEP @JOB_NAME = 'ZZTZ_BACKUP_LOG',
@STEP_NAME = 'ZZTZ_BACKUP_LOG',
@SUBSYSTEM = 'TSQL',
@COMMAND = @BACKUPCOMMAND ,
@DATABASE_NAME='ZZTZ'
GO

EXEC SP_ADD_JOBSCHEDULE @JOB_NAME = 'ZZTZ_BACKUP_LOG',
@NAME = 'ZZTZ_BACKUP_LOG' ,
@FREQ_TYPE = 4,
@FREQ_INTERVAL = 1,
@ACTIVE_START_TIME = 150000
GO

EXEC SP_ADD_JOBSERVER
@JOB_NAME='ZZTZ_BACKUP_LOG',
@SERVER_NAME='(LOCAL)'

为了确保在线日志的安全性以便在灾难发生时恢复到失效点,建议采用SQLSERVER的日志传送方案(LOGSHIPPING)实时备份在线日志文件.


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/756652/viewspace-242049/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/756652/viewspace-242049/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值