KingbaseES 支持Job And Schedule

【本文正在参与炫“库”行动-人大金仓有奖征文】

活动链接:https://marketing.csdn.net/p/98bd30353e7cb998b6070a89e8b91edb

KingbaseES 数据库提供了 kdb_schedule 扩展,使得用户能通过类似oracle job 的方式进行job调用。kdb_schedule 提供了三个Schema :dbms_job and dbms_scheduler 分别类似于 oracle 的 dbms_job 和 dbms_schedule 包,数据字典信息放于kdb_schedule 模式下。

一、配置系统参数

V8R6C3 以及之前的版本要运行job,必须先运行 kdb_schedule 操作系统进程,通过kdb_schedule 连接数据库执行。新版本通过library 方式:

shared_preload_libraries = 'kdb_schedule , ......'
 
alter system set job_queue_processes=5;

注意事项:
1、job_queue_processes 必须大于0 , 为0 表示不开启job
2、kdb_schedule 必须放在 share

二、通过dbms_job管理Job

1、创建Job

create table d_test(tid varchar2(64), insdate date);
 
create or replace procedure p_test() as
begin
  insert into d_test values(to_char(sysdate, 'yyyymmddhh24miss'), sysdate);
  commit;
end;
/
 
 
DECLARE
  v_jobid NUMBER;
BEGIN
  dbms_job.submit(v_jobid, 'call p_test()', now(), 'Freq=Minutely;Interval=1');
  COMMIT;
END;
/
 
test=# call dbms_job.instance(1, 'user=system dbname=test port=54321 password=P123');
CALL

注意:dbms_job.instance 的 1 表示job_id,这是为特定的job_id 设置连接串。

2、查询Job

test=# select jobid,jobname,jobenabled,joblastrun,jobnextrun,jobrepeattimes from kdb_job;
 jobid |                   jobname                   | jobenabled | joblastrun |          jobnextrun           | jobrepeattimes
-------+---------------------------------------------+------------+------------+-------------------------------+----------------
     1 | internal_job1:2021-06-22 08:11:39.797681+08 | f          |            | 2021-06-22 08:11:39.797681+08 |              0

可以看到,J

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值