跳到主要內容

關於 ibdata1

目前有解決的辦法了,根據前一篇「ibdata1 can't be shrunk!」提及的方法,另外加上在 my.ini 底下將 innodb_flush_log_at_trx_commit 值設定為 0 就可以減少 log 寫入。

後面再將 ibdata1 更名備份,之後開啟 MySQL 就可以回覆到最小的 ibdata1 。

完整步驟:
  1. 將資料表全部轉成 MyISAM
  2. 關閉 MySQL
  3. 修改 my.ini > innodb_flush_log_at_trx_commit=0
  4. 將 ibdata1 更名備份
  5. 開啟 MySQL
關於 innodb_flush_log_at_trx_commit
通常設置為 1,意味著在事務提交前日誌已被寫入磁盤, 事務可以運行更長以及服務崩潰後的修復能力。如果你願意減弱這個安全,或你運行的是比較小的事務處理,可以將它設置為 0 ,以減少寫日誌文件的磁盤 I/O。這個選項默認設置為 0。

留言

show