首页 > 数据库技术 > 详细

mysql分批删除数据

时间:2020-06-18 11:41:57      阅读:74      评论:0      收藏:0      [点我收藏+]

DELIMITER $$
DROP PROCEDURE IF EXISTS `study`.`xx` $$
CREATE PROCEDURE `study`.`xx` ()
BEGIN
DECLARE i int;
loop1:loop
delete from xxx where xx=xx limit 5000;
select row_count() into i;
if i=0 then
leave loop1;
end if;
select sleep(1);
end loop loop1;
END $$
DELIMITER ;

分批删除数据减少对undo段的使用(mysql有个线程purge会定时回收空闲的undo)。

 

mysql分批删除数据

原文:https://www.cnblogs.com/muzisanshi/p/13156598.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!