`
alovejun14
  • 浏览: 77855 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

数据库自动备份

阅读更多

USE [Common]
go

/*
 * 创建存储过程---备份数据库
 */
Create PROCEDURE [dbo].[P_BackupDataBase]
AS
begin
 declare @livePath varchar(100) 
 declare @wzhCommPath varchar(100) 
 declare @oaPath varchar(100) 
 set @livepath = 'D:\DataBase\Live\Live_' + replace(convert(varchar, getdate(), 111),'/','') + '.bak'
 set @wzhCommPath = 'D:\DataBase\WZHComm\WZHComm_' + replace(convert(varchar, getdate(), 111),'/','') + '.bak'
 set @oaPath = 'D:\DataBase\OA\OA_' + replace(convert(varchar, getdate(), 111),'/','') + '.bak'
 
 Backup DataBase LiveClient to Disk = @livepath
 Backup DataBase WZHComm to Disk = @wzhCommPath
 Backup DataBase OA to Disk = @oaPath
end
go


use msdb
go

/*
 * 创建自动备份数据库作业
 */
IF EXISTS(SELECT * FROM msdb.dbo.sysjobs WHERE name='BackupData')
EXEC msdb.dbo.sp_delete_job @job_name='BackupData' --删除已存在作业
Exec Sp_Add_Job @Job_Name = 'BackupData',   --添加作业
@Enabled = 1,
@Description = '每日00:01:00更新活动状态',
@Start_Step_id = 1,
@Owner_Login_Name = 'tech'
Exec Sp_Add_JobServer @Job_Name = 'BackupData' --创建作业
Go

/* 设置作业   */
Exec Sp_Add_JobSchedule @Job_Name = 'BackupData', --创建调度
@name = 'UpdateActStatus00:01:00',    --调度名称
@Freq_type = 4,       --4 代表每天
@Freq_interval = 1 ,      --制定每多少@Freq_Interval执行一次 这里是每天
@Active_Start_Date = null,     --作业执行开始日期 为Null时表示当前日期 格式为YYYYMMDD
@Active_End_Date = 99991231,     --作业执行的停止日期,默认为99991231 格式YYYYMMDD
@Active_Start_Time = 000100,     --作业执行的开始时间,格式为HHMMSS,这里设定为凌晨0点01分 .
@Active_End_Time = 040000     --作业执行的停止时间,格式为HHMMSS,这里是凌晨4点
Go

Exec Sp_Add_JobStep @Job_Name = 'BackupData',
@Step_Name = '备份数据库', --作业步骤名称
@SubSystem = 'TSql',      --步骤类型 一般为TSQL
@Command = 'Exec P_BackupDataBase',    --作业步骤内容 Sql语句
@DataBase_Name = 'Common'     --作业所在数据库
Go

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics