我有生产中的tb\u event\u log表,我需要将prod数据传输到同一台服务器上的虚拟表中,并截断生产表,同时要锁定生产表。我是db的新手,有谁能提出有效的方法来做同样的事情。
CREATE event transfer_data
ON SCHEDULE EVERY 12 hour
STARTS CURRENT TIME_STAMP
DO
BEGIN
LOCK TABLE TB_EVENT_LOG WRITE;
INSERT INTO TB_EVENT_LOG_dummy SELECT * FROM TB_EVENT_LOG ;
UNLOCK TABLES;
TRUNCATE TABLE TB_EVENT_LOG;
END |
DELIMITER ;
1条答案
按热度按时间cbjzeqam1#
为了确保只从生产表中删除复制的记录,可以使用事务而不是表锁定。
例如