千萬級 百萬級資料刪除優化

2021-09-01 13:35:28 字數 383 閱讀 6816

在mysql上面刪除大量資料(千萬級),由於不是清空資料,故不能使用truncate 語句(有個truncate可參考:mysql delete語句與truncate table語句)

在正常delete下,刪除十分緩慢;

由於索引的原因,每次刪除都要相應的更新索引,越往後索引碎片越多,即越往後越慢

完整備份;

儲存索引ddl,刪除索引,刪除速率與索引量成正比;儲存索引ddl,刪除索引,刪除速率與索引量成正比;

關閉日誌記錄;

刪除後重建索引

tip:

如果需要保留的資料比較少的話,可以把要保留的資料備份出來。drop原表,重新建立,先不要急著建立索引、主鍵,把資料導回去,然後在建索引、約束之類的。

千萬級 百萬級資料刪除優化

在mysql上面刪除大量資料 千萬級 由於不是清空資料,故不能使用truncate 語句 有個truncate可參考 mysql delete語句與truncate table語句 在正常delete下,刪除十分緩慢 由於索引的原因,每次刪除都要相應的更新索引,越往後索引碎片越多,即越往後越慢 完整...

MySQL百萬級 千萬級資料多表關聯SQL語句調優

mysql百萬級 千萬級資料多表關聯sql語句調優 本文不涉及複雜的底層資料結構,通過explain解釋sql,並根據可能出現的情況,來做具體的優化,使百萬級 千萬級資料表關聯查詢第一頁結果能在2秒內完成 真實業務告警系統優化結果 希望讀者能夠理解sql的執行過程,並根據過程優化,走上自己的 成金之...

MySQL百萬級 千萬級資料多表關聯SQL語句調優

本文不涉及複雜的底層資料結構,通過explain解釋sql,並根據可能出現的情況,來做具體的優化,使百萬級 千萬級資料表關聯查詢第一頁結果能在2秒內完成 真實業務告警系統優化結果 希望讀者能夠理解sql的執行過程,並根據過程優化,走上自己的 成金之路 需要優化的查詢 使用explain 出現了usi...