配置监控作业
监控作业是指把作业的运行情况发给作业操作员,邮件发送成功的前提是两个:
1.为监控服务配置管理员
2.开启监控服务。
1.添加管理员
打开manager管理工具。右击“代理”,选中“配置代理属性”
出现如下框体:
在“常规”界面点击“添加”按钮即可添加管理员。点击已存在的管理员可以修改管理员。
我添加的管理员如下:
这个过程的对应语句是:
call SP_ADD_MAIL_INFO('SYSDBA','SYSDBA','smtp.exmail.qq.com','luzhao@dameng.com',
'luzhao@dameng.com','********');
2.开启监控服务
打开服务查看器,右键达梦数据库作业服务,选择“修改服务”
修改服务界面选择“配置”
连接信息中用户名必须是上节已经配置的管理员。
之后启动作业监控服务。
作业管理流程
以下是本次实验的一个作业:
数据准备:
DROP TABLE MYJOB;
CREATE TABLE MYJOB(
A INT PRIMARY KEY,
B VARCHAR(8188)
);
作业准备:
--创建作业环境
SP_INIT_JOB_SYS(1);--创建操作员
SP_CREATE_OPERATOR('SYSDBA',1,'luzhao@dameng.com','192.168.50.21');
作业脚本:
--创建并配置作业
call SP_CREATE_JOB('TEST',1,1,'SYSDBA',2,1,'SYSDBA',2,'一个测试作业');
--开始配置作业
call SP_JOB_CONFIG_START('TEST');
--作业步骤
call SP_ADD_JOB_STEP('TEST', 'STEP1000', 0, 'INSERT INTO MYJOB VALUES (1000,''STEP 1000'');', 2, 3, 3, 2, NULL, 0);
call SP_ADD_JOB_STEP('TEST', 'STEP1001', 0, 'INSERT INTO MYJOB VALUES (1001,''STEP 1001'') ;', 2, 3, 3, 2, NULL, 0);
call SP_ADD_JOB_STEP('TEST', 'STEP1002', 0, 'INSERT INTO MYJOB VALUES (1001,''STEP 1001'') ;', 2, 3, 3, 2, NULL, 0);
--作业调度
call SP_ADD_JOB_SCHEDULE('TEST', 'SCHEDULE', 1, 1, 1, 0, 1, '15:30:23', '23:59:59', '2021-08-15 00:00:00', NULL, '一个测试调度');
--提交作业
call SP_JOB_CONFIG_COMMIT('TEST');
作业步骤:
--为作业增加一个步骤。向表MYJOB中插入数据,因为A列是主键,所以第三条数据A列值重复会被报错,错误码-6602.
--可以通过表SYSJOBSTEPS查看到步骤相关信息。call SP_ADD_JOB_STEP('TEST', 'STEP1000', 0, 'INSERT INTO MYJOB VALUES (1000,''STEP 1000'');', 2, 3, 3, 2, NULL, 0);
call SP_ADD_JOB_STEP('TEST', 'STEP1001', 0, 'INSERT INTO MYJOB VALUES (1001,''STEP 1001'') ;', 2, 3, 3, 2, NULL, 0);
call SP_ADD_JOB_STEP('TEST', 'STEP1002', 0, 'INSERT INTO MYJOB VALUES (1001,''STEP 1001'') ;', 2, 3, 3, 2, NULL, 0);
这里等价于在“作业”-“修改”中修改作业步骤:
作业调度:
--为作业增加一个调度。可以通过表SYSJOBSCHEDULES查看到调度相关信息
SP_ADD_JOB_SCHEDULE('TEST','SCHEDULE',1,1,1,0,1,CURTIME,'23:59:59',CURDATE,NULL,'一个测试调度');
这里等价于在“作业”-“修改”中修改作业调度:
警报关联:
--创建并关联警报
--创建警报ALERT1,指定错误码-6602.可以在表SYSALERTS中查看到警报的相关信息。
SP_CREATE_ALERT('ALERT1',1,0,12,-6602,1,'DDL警报测试');--关联警报,将警报ALERT1发送给关联的操作员SYSDBA。可以在表SYSALERTNOTIFICATIONS中查看到警报与操作员的关联信息。
SP_ALERT_ADD_OPERATOR('ALERT1','SYSDBA',1,1);
监控查看:
可以在表中查看作业错误:
SELECT * FROM SYSJOB.SYSJOBHISTORIES2;
也可以在右键“作业”选中“查看作业历史信息”
更多参考内容请访问达梦云适配中心