鍍金池/ 問答/Java  數(shù)據(jù)庫/ Mysql刪除百萬級(jí)別的數(shù)據(jù),innoDB的,不能刪除整張表,求給好的方案

Mysql刪除百萬級(jí)別的數(shù)據(jù),innoDB的,不能刪除整張表,求給好的方案

求大神解答,有什么好的效率高的方案推薦,而不是刪庫跑路。

回答
編輯回答
傻叼

一開始就要做db級(jí)分區(qū),現(xiàn)在刪除痛苦了吧

2017年9月29日 01:25
編輯回答
吢丕

個(gè)人感覺如果是只操作一次的話,就分批刪除??梢詫懸粋€(gè)定時(shí)任務(wù),每次刪除一萬條,然后,使用crontab調(diào)用。每五分鐘或者一分鐘調(diào)用一次。寫日志或者新建一個(gè)表,保存刪除到了哪一條(可以存id)方便下次任務(wù)執(zhí)行。

2017年9月30日 19:27
編輯回答
離人歸

哥們 知道重命名么 修改后再創(chuàng)建一個(gè)

2017年2月7日 09:34
編輯回答
逗婦惱

如果是刪除表絕大部分?jǐn)?shù)據(jù),可以考慮將需要的數(shù)據(jù)插入一個(gè)新表,然后將通過重命名的方式更換為原有的表名。

如果mysql不支持在線修改表名稱,那么需要在生產(chǎn)環(huán)境需要短暫的停機(jī)。

2018年4月22日 02:48