SQL执行定时任务JOB

日期:2022-04-29 16:20:29 发布者: ICT-Francis 浏览次数:

JOB定义:数据库中可以定时执行任务的功能组件。作用:可应用于定期执行存储过程、定期备份数据库文件和定期删除文件等。

一、JOB定义:数据库中可以定时执行任务的功能组件

二、作用:可以按照设置好的参数定时执行查询语句或存储过程,适合于一些每天、每周、每月、每年等需要定时循环执行任务的场景。实际可应用于定期执行存储过程、定期备份数据库文件和定期删除文件等。如下以定期备份数据库为实例。

三、创建JOB

在SQL Server中有图像化的界面便捷创建JOB,打开SQL Server,创建流程如下:

1. 【SQL Server代理】——【作业】(鼠标右键)——【新建作业】,如图:

图 SEQ 图 \* ARABIC 1 新建作业

2. 在弹出的对话框中,输入作业名称backupjob,并勾选“启用”选项

图 SEQ 图 \* ARABIC 2 创建作业常规页面操作

3. 点击左侧选项页菜单栏【步骤】,在显示的页面中点击左下角的【创建】

图 SEQ 图 \* ARABIC 3 开始创建作业

4. 在弹出的对话框中:

a. 填入步骤名称backup_test_01

b. 数据库选择要备份的对应数据库TEST_01

c. 在命令中输入脚本:

DECLARE @name VARCHAR(250);

SET @name='E:\backup\TEST_01_'+CONVERT(varchar(50),getdate(),112)+'.bak'

--注释:实现对数据库TEST_01的完整备份,备份文件在E盘backup文件夹中,文件名为TEST_01+备份日期字符串.bak (备份路径和文件名皆可自定义更改)

BACKUP DATABASE[TEST_01] TO DISK=@name WITH NOFORMAT,NOINIT,

name=N'TEST_01-完整数据库备份',

SKIP,NOREWIND,NOUNLOAD

图 SEQ 图 \* ARABIC 4 填写作业步骤内容

5. 选择左侧菜单【高级】选项,在如下图步骤2中选择“执行成功后退出”,点击“确定”结束作业步骤,回到主菜单

图 SEQ 图 \* ARABIC 5 作业高级设置

6. 创建计划:在主菜单中点击【计划】——【新建】

图 SEQ 图 \* ARABIC 6 创建计划

7. 配置作业计划具体内容,输入计划名称:planbackup_test_01;执行频率为每天0点定时备份,持续时间为无结束日期(实际可自定义更改),完成后点击“确定”

图 SEQ 图 \* ARABIC 7 作业计划具体配置

8. 配置完成后,回到主菜单点击“确定”,作业创建成功

图 SEQ 图 \* ARABIC 8 创建成功作业显示