Mysql Event执行失败 Lock wait timeout exceeded; try restarting transaction
Lock wait timeout exceeded; try restarting transaction
现在有一个 事件就是 将一个逻辑有点复杂的视图 的数据 备份到 一个物理表当中
INSERT INTO `REGISTER_INFO_HIS` (`id`, `name`.......)
SELECT `id`, `name`....... FROM VIEW_TABLE;
直接执行这个SQL 语句需要 15秒的时间
我现在做了一个 存储过程:
DELIMITER $$
USE `mydbname`$$
DROP PROCEDURE IF EXISTS `ORDER_DETAIL_HIS`$$
CREATE DEFINER=`mydbname`@`%` PROCEDURE `ORDER_DETAIL_HIS`()
BEGIN
TRUNCATE TABLE REGISTER_INFO_HIS;
INSERT INTO `REGISTER_INFO_HIS` (`id`, `name`.......)
SELECT `id`, `name`....... FROM VIEW_TABLE;
END$$
DELIMITER ;
==================
事件:
CREATE EVENT `EVENT_UPDATE_REGISTER_ORDER_DETAIL_HIS` ON SCHEDULE EVERY 1 DAY STARTS '2014-08-23 03:10:00'
ON COMPLETION NOT PRESERVE ENABLE
DO CALL ORDER_DETAIL_HIS();
=======================
报错是: [ERROR] Event Scheduler:
Lock wait timeout exceeded; try restarting transaction
TRUNCATE TABLE REGISTER_INFO_HIS; 是执行了, 但数据表没有数据
求各位大哥帮忙喔