2008-11-24 64 views
4

所以,我想能夠將最大日誌文件大小設置爲64M,但是在使用innodb_log_file_size = 64M後,MySQL開始正常運行,但似乎沒有任何工作正常。編輯:通過正確的我的意思是根本沒有。設置其他InnoDB變量不會導致任何問題。設置innodb_log_file_size崩潰MySQL

我該如何解決這個問題?

回答

4

確保MySQL完全關閉,並從MySQL數據目錄(通常爲/var/lib/mysql/)刪除(或移動其他地方)的所有ib_logfile*文件。

我測試過它併爲我工作。這是source of this hint

InnoDB在show table status評論字段中報告一些錯誤。您會在MySQL錯誤日誌中找到其他問題(MySQL數據目錄中的hostname.err)。

1

我就遇到了這個問題太多,每@作爲porneL的答案,這裏是我的具體步驟的bash糾正這一點:

service mysql stop    # Stop MySQL 
rm /var/lib/mysql/ib_logfile0 # Delete log file 1 
rm /var/lib/mysql/ib_logfile1 # Delete log file 2 
vim my.conf      # Change innodb_log_file_size = 64M 
service mysql start    # Start MySQL 

我發現了MySQL forums這些具體步驟。

1

在更改innodb_log_file_size之前,您必須清除所有剩餘的事務數據。您只需設置innodb_fast_shutdown爲0或2

  • innodb_fast_shutdown = 0:InnoDB的沒有一個緩慢的關機,一個完整的淨化和插入緩衝關閉前合併
  • innodb_fast_shutdown = 2:InnoDB的刷新它的日誌,並關閉寒冷,好像MySQL已經崩潰;沒有提交的事務丟失,但崩潰恢復操作使下一次啓動需要更長的時間。

鑑於此,你這是怎麼處理它

mysql -ANe"SET GLOBAL innodb_fast_shutdown = 2" 
vi /etc/my.cnf     # Change innodb_log_file_size = 64M 
service mysql stop    # Stop MySQL 
rm /var/lib/mysql/ib_logfile0 # Delete log file 1 
rm /var/lib/mysql/ib_logfile1 # Delete log file 2 
service mysql start    # Start MySQL