如何清理InnoDB 儲存引擎
儘管有好處,InnoDB 儲存引擎可能會因刪除表中的資料而變得混亂,可能會導致膨脹隨著時間的推移資料庫。要清理這些不必要的資料並保持資料庫效率,請按照下列步驟操作:
第1 步:轉儲資料庫資料
使用mysqldump 將整個資料庫匯出到SQL 文字檔中。例如,您可以建立一個名為 SQLData.sql 的檔案。
步驟 2:刪除資料庫
刪除 mysql 和 information_schema 以外的所有資料庫。透過將 mysql 目錄複製到備份位置 (/var/lib/mysql_grants),確保您擁有所有使用者授權。
步驟 3:刷新交易變更
執行指令SET GLOBAL innodb_fast_shutdown = 0;清除任何剩餘的交易變更。
步驟4:關閉並修改配置
關閉MySQL 並將以下行加入/etc/my.cnf 檔案中:
第5 步:清理檔案
從MySQL 資料目錄中刪除 ibdata 和 ib_logfile 檔案。
第6 步:重新啟動MySQL
重新啟動MySQL 重新建立ibdata1 和ib_logfile*
第7 步:導入資料
導入之前轉儲的SQLData.sql 檔案以還原資料庫資料。
完成這些步驟後, ibdata1 將僅包含表元數據,而每個 InnoDB 表將獨立儲存。運行 OPTIMIZE TABLE 現在將有效收縮表檔案 (/var/lib/mysql/mydb/mytable.ibd)。
以上是如何有效率地清理 InnoDB 儲存引擎以提高資料庫效能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!