標籤:http io os ar 資料 div art sp cti
mysql定時指令碼(event),類似oracle的job 我有2張表:tb_push_data 和 tb_push_data_log現在需要每隔一段時間將tb_push_data 合格資料備份到表 tb_push_data_log www.2cto.com -------------------------------------------------------------------------- 一、建立預存程序 DELIMITER $$ USE `push_server_db`$$ DROP PROCEDURE IF EXISTS `proc_tb_push_data_backup`$$ CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_tb_push_data_backup`()BEGIN START TRANSACTION; INSERT INTO tb_push_data_log(id,created_date,data_id,gps,have_image,message,recv_name,
recv_username,send_name,send_username,STATUS,tool,updated_date,uri,image_path,log_time) SELECT id,created_date,data_id,gps,have_image,message,recv_name,recv_username,send_name,
send_username,STATUS,tool,updated_date,uri,image_path,NOW() FROM tb_push_data WHERE STATUS = ‘ALREADY_RECEIVE‘; DELETE FROM tb_push_data WHERE STATUS = ‘ALREADY_RECEIVE‘; COMMIT; END$$ DELIMITER ; 二、建立MYSQL事件 DELIMITER $$ CREATE event event_tb_push_data_backup ON SCHEDULE EVERY 5 MINUTE STARTS NOW() DO BEGIN CALL event_tb_push_data_backup(); END; DELIMITER ; 三、驗證並修改資料庫是否開啟了事件 www.2cto.com 大家按照例子做完以後,可能發現沒有運行event,原因大都是因為event_scheduler狀態沒開啟 查看event_scheduler狀態 show variables like ‘%sche%‘; 修改event_scheduler狀態 set global event_scheduler=1;
mysql定時指令碼(event),類似oracle的job