Исправляем ошибку InnoDB: ERROR: the age of the last checkpoint is xxxxxxx, InnoDB: which exceeds the log group capacity xxxxxx.
Иногда при активной работе с базами на сервере появляется ошибка ERROR: the age of the last checkpoint is 9448958.
После этого данные корректно не записываются в базу и mysql не загружается.
Полностью ошибка выглядит так:
InnoDB: ERROR: the age of the last checkpoint is 9448958, InnoDB: which exceeds the log group capacity 9433498. InnoDB: If you are using big BLOB or TEXT rows, you must set the InnoDB: combined size of log files at least 10 times bigger than the InnoDB: largest such row.
Эта ошибка возникает когда в базу данных активно пишутся данные, но размер файлов ib_logfile* слишком мал.
Лечение:
1. Делаем бэкап.
2. Увеличиваем значение параметра innodb_log_file_size в файле /etc/my.cnf (я установил его в 50М, но желательно вычислить точный его размер, он должен быть равен объёму данных записываемых в течении одного часа в таблицы Innodb).
3. Останавливаем mysql
4. Удаляем файлы ib_logfile0 и ib_logfile1 из рабочего каталога mysql
5. Запускаем mysql
6. Проверяем:
mysql -e "show variables" |grep innodb_log_file_size
innodb_log_file_size 52428800
Теги: error, InnoDB, mysql