DM达梦数据库作业管理详解

1、什么是作业管理?

在数据库的日常运维工作中,有许多日常工作都是固定不变的。例如,定期备份数据库,定期生 成数据统计报表等等。这些工作既单调又费时,如果这些重复任务能够自动化完成,那就可以节省大量的时间。
DM 的作业系统为用户提供了创建作业,并对作业进行调度执行以完成相应管理任务的功能。可以让这些重复的数据库任务自动完成,实现日常工作自动化。
作业系统大致包含作业、 警报和操作员三部分。用户需要为作业配置步骤和调度。还可以创建警报,当发生警报时,将警报信息通知操作员,以便操作员能够及时做出响应。

2、配置作业

作业配置可以通过两种方式来实现:一是通过系统过程来实现;二是通过图形化客户端 MANAGER 管理工具实现。

2.1、图形化工具实现
代理环境(达梦数据库会创建一个sysjob的模式)
在这里插入图片描述
创建作业:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.2、系统过程实现
例子:
1、创建作业环境

SP_INIT_JOB_SYS(1);

2、创建操作员bill。可以通过表SYSOPERATORS查看已创建操作员的相关信息

SP_CREATE_OPERATOR('bill', 1, '[email protected]', '192.168.17.0');

3、创建作业TEST。可以通过表SYSJOBS看到作业相关信息。

SP_CREATE_JOB('bill', 1, 1, 'bill', 2, 1, 'bill', 2, '一个测试作业');

4、开始配置作业

SP_JOB_CONFIG_START('TEST');

5、为作业增加一个步骤
向表 MYJOB 中插入数据,因为 A 列是主键,所以第三条数据 A 列值重复会被报错,错 误码-6602。可以通过表 SYSJOBSTEPS 查看到步骤相关信息。

SP_ADD_JOB_STEP('TEST', 'STEP', 0, 'insert into myjob values(1000,''STEP
1000'');insert into myjob values(1001, ''STEP 1001'');insert into myjob
values(1001, ''STEP 1001'');', 0, 2, 1, 1,'', 0);

6、为作业增加一个调度。可以通过表SYSJOBSCHEDULES查看到调度相关信息

SP_ADD_JOB_SCHEDULE('TEST', 'SCHEDULE', 1, 1, 1, 0, 1, CURTIME, '23:59:59', CURDATE, NULL, '一个测试调度');

7、提交配置

SP_JOB_CONFIG_COMMIT('TEST');

8、创建警报ALERT1,指定错误码-6602。可以在表SYSALERTS中查看到警报的相关信息。

SP_CREATE_ALERT('ALERT1', 1, 0,12, -6602, 1, 'DDL 警报测试');

9、关联警报,将警报 ALERT1 发送给关联的操作员bill。可以在表SYSALERTNOTIFICATIONS 中查看到警报与操作员的关联信息。

SP_ALERT_ADD_OPERATOR('ALERT1','bill',1,1);

10、添加监控服务DMJMON管理员。可以通过表SYSMAILINFO查看监控服务器管理员 信息。

 SP_ADD_MAIL_INFO('SYSDBA','SYSDBA','192.168.17.0','[email protected]','[email protected]','888888');

至此就配置完了作业以及监控。

3、查看作业

如何去查看作业执行情况?

SQL> select * from sysjob.sysjobs;

在这里插入图片描述

SQL> select * from sysjob.sysjobhistories;

在这里插入图片描述

SQL> select * from sysjob.sysjobschedules;

在这里插入图片描述

SQL> select * from sysjob.sysjobsteps;

在这里插入图片描述

发布了155 篇原创文章 · 获赞 88 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_39540651/article/details/105097496