在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...