整理一下oracle、sqlserver、mysql的定时任务实现方法

本文介绍了如何在MySQL、SQL Server和Oracle中设置定时任务。对于MySQL,通过创建EVENT实现定时数据同步;在SQL Server中,利用SQL Server代理创建作业进行调度;而在Oracle中,使用DBMS_JOB提交并运行存储过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

---mysql
/*开启event_scheduler,也可以设置为on*/
set global event_scheduler =1;
/*创建简单的任务,每分钟执行一次,从一个表取数据插入到另一个表,也可以定时取,可以参看下面文档,此处为简单例子*/
CREATE EVENT MyEvent
ON SCHEDULE EVERY 1 MINUTE
DO
INSERT INTO list_test (字段1,字段1,字段1,字段1,字段1) select 字段1,字段1,字段1,字段1,字段1 from 表2 where id  = 510;
/*每天固定时间执行*/
CREATE EVENT EVENT_ADD_FOR20_ENOUGH
ON SCHEDULE EVERY 1 DAY
STARTS TIMESTAMP '2009-12-18 02:58:00'/×MYSQL注意时区设置,默认非中国时区×/
DO
SQL语句

 


---sqlserver

◆1、管理->SQL Server代理->作业(按鼠标右键)->新建作业->

◆2、新建作业属性(常规)->名称[自定义本次作业的名称]->启用的方框内是勾号->

        分类处可选择也可用默认的[未分类(本地)]->所有者默认为登录SQL Server用户[也可选其它的登录]->

        描述[填写本次工作详细描述内容];

        [ 创建作业分类的步骤:

        SQL Server代理->作业->右键选所有任务->添加、修改、删除 ]

◆3、新建作业属性(步骤)->新建->步骤名[自定义第一步骤名称]->类型[Transact-SQL(TSQL)脚本]->

        数据库[要操作的数据库]->命令

        [如果是简单的SQL直接写进去即可,也可用打开按钮输入一个已写好的*.sql文件

        如果要执行存储过程,填

        exec p_procedure_name v_parameter1,[ v_parameter2…v_parameterN]

        ->确定

        (如果有多个步骤,可以再次调用下面的新建按钮;也可以对已有的多个步骤插入、编辑、删除);

◆4、建作业属性(调度)->新建调度->名称[自定义调度名称]->启用的方框内是勾号->调度->反复出现->

        更改[调度时间表]->确定

        (如果只要保存此作业,不要定时做可以把启用的方框内是勾号去掉);

◆5、建作业属性(通知)->用默认的通知方法就好[当作业失败时,写入Windows应用程序系统日志] ->确定。

        跟作业执行相关的一些SQL Server知识:

        SQLSERVERAGENT服务必须正常运行,启动它的NT登录用户要跟启动SQL Server数据库的NT登录用户一致。

        点作业右键可以查看作业执行的历史记录情况,也可以立即启动作业和停止作业。

 

---oracle

 Oracle数据库的Jobs创建语句如下:

begin

sys.dbms_job.submit(job=>:job,

what=>'proc_yw;',

next_date=>to_date('13-11-200714:00:00','dd-mm-yyyyhh24:mi:ss'),

interval=>'trunc(sysdate)+1+14/24');

commit;

end; 
启动Job.
   begin
       SYS.DBMS_JOB.RUN(:job);
   end;
间隔trunc(sysdate)+1+14/24 就是每天下午2点执行一次proc_yw存储过程;

如间隔trunc(sysdate)+1+33/48就是每天下午4:30时执行一次

oracle数据库的定时Jobs作业(工作) 的使用:

通过jobs的使用就能实现每天或每月的指定时间执行一个函数、过程与命令。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值