Исправляем ошибку InnoDB: ERROR: the age of the last checkpoint is xxxxxxx, InnoDB: which exceeds the log group capacity xxxxxx.

В категорії Підказки от 12 Листопада, 2014. Автор admin

Иногда при активной работе с базами на сервере появляется ошибка 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
Теги: , ,