• ADADADADAD

    mysql event建立模板(可记录执行履历)[ mysql数据库 ]

    mysql数据库 时间:2024-12-24 19:10:09

    作者:文/会员上传

    简介:

    建立履历记录表CREATETABLE`mysql`.`t_event_history`(`dbname`VARCHAR(128)NOTNULLDEFAULT'',`eventname`VARCHAR(128)NOTNULLDEFAULT'',`starttime`DATET

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

      建立履历记录表

    CREATETABLE`mysql`.`t_event_history`(`dbname`VARCHAR(128)NOTNULLDEFAULT'',`eventname`VARCHAR(128)NOTNULLDEFAULT'',`starttime`DATETIMENOTNULLDEFAULT'0000-00-0000:00:00',`endtime`DATETIMEDEFAULTNULL,`issuccess`INT(11)DEFAULTNULL,`duration`INT(11)DEFAULTNULL,`errormessage`VARCHAR(512)DEFAULTNULL,`randno`INT(11)DEFAULTNULL,PRIMARYKEY(`dbname`,`eventname`,`starttime`),KEY`ix_endtime`(`endtime`),KEY`ix_starttime_randno`(`starttime`,`randno`))ENGINE=INNODBDEFAULTCHARSET=utf8;

    2.event 建立模板

    DELIMITER$$CREATEDEFINER=`root`@`localhost`EVENT`job_update_status`ONSCHEDULE#修改以下调度信息EVERY5minuteSTARTSnow()ONCOMPLETIONPRESERVEENABLEDOBEGINDECLAREr_codeCHAR(5)DEFAULT'00000';DECLAREr_msgTEXT;DECLAREv_errorINTEGER;DECLAREv_starttimeDATETIMEDEFAULTNOW();DECLAREv_randnoINTEGERDEFAULTFLOOR(RAND()*100001);INSERTINTOmysql.t_event_history(dbname,eventname,starttime,randno)#修改下面的作业名(该作业的名称)VALUES(DATABASE(),'job_update_status',v_starttime,v_randno);BEGIN#异常处理段DECLARECONTINUEHANDLERFORSQLEXCEPTIONBEGINSETv_error=1;GETDIAGNOSTICSCONDITION1r_code=RETURNED_SQLSTATE,r_msg=MESSAGE_TEXT;END;#此处为实际调用的用户程序过程CALLautomaintain.pro_update_status();END;UPDATEmysql.t_event_historySETendtime=NOW(),issuccess=ISNULL(v_error),duration=TIMESTAMPDIFF(SECOND,starttime,NOW()),errormessage=CONCAT('error=',r_code,',message=',r_msg),randno=NULLWHEREstarttime=v_starttimeANDrandno=v_randno;END$$DELIMITER;

    3.查询event

    select * from mysql.event;

    mysql event建立模板(可记录执行履历).docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: eventmysql履历