InnoDB log file size — размер файлов журнала транзакций, которые необходимы для отмены транзакций и восстановления базы в случае сбоя.
Сначала посмотрим текущее значение (у меня отобразилось 50331648 байт):
mysql -u root -p
SELECT @@innodb_log_file_size;
show variables like 'innodb_log_file_size';
show variables like 'innodb_log_files_in_group';
exit
Чтобы изменить значение, откроем файл конфигурации MySQL сервера в текстовом редакторе, например:
nano /etc/mysql/mysql.conf.d/mysqld.cnf
И укажем размер:
innodb_log_file_size = 1G
innodb_log_files_in_group можно не указывать, так как по умолчанию оно равно 2, то есть в нашем случае создастся два файла по 1Gb.
Обычно innodb_log_file_size равен 25% от innodb_buffer_pool_size, то есть если например innodb_buffer_pool_size = 2G, то можно указать innodb_log_file_size = 256M.
Остановим MySQL сервер:
/etc/init.d/mysql stop
Посмотрим текущий размер log файлов (ib_logfile0 и ib_logfile1):
ls -lah /var/lib/mysql/
Запустим MySQL сервер:
/etc/init.d/mysql start
Проверим логи, убедимся что InnoDB увидел что изменено значение innodb_log_file_size, закрыл и удалили старые log файлы, а потом создал и открыл новые log файлы:
tail -n 100 //var/log/mysql/error.log
Убедимся что изменился размер лог файлов:
ls -lah /var/lib/mysql/
Смотрите также мои статьи:
Изменение InnoDB buffer pool
Установка и использование mysqltuner.pl
Решение «InnoDB Error ib_logfile0 is of different size»