Лекция
Привет, Вы узнаете о том , что такое правильное изменение размера лога innodb innodb_log_file_size , Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое правильное изменение размера лога innodb innodb_log_file_size , настоятельно рекомендую прочитать все из категории Базы данных - MySql (Maria DB).
Во время работы innodb записывает все измененные данные не сразу в файлы баз данных, а первоначально сбрасывает все в бинарный лог (опция innodb_log_file). Это позволяет повысить скорость работы, т.к. операция записи в файл таблицы более трудоемкая, чем в файл лога. К тому же ведение лога позволяет записывать в файл таблицы последовательными кусками данных, быстрее обслуживать клиентов mysql (данные принял, записал в лог, отчитался клиенту что все ОК)
При аварийном завершении сервера данный лог файл позволяет откатить поврежденные (незавершенные) транзакции. Чем больше лог файл - тем больше операций в нем хранится, и тем больше время для просмотра/анализа корректности последнего запершения работы необходимо innodb.
По-умолчанию бинарный лог-файл innodb имеео объем 5 Мб:
mysql -e "show variables like 'innodb_log_file_size'" +----------------------+---------+ | Variable_name | Value | +----------------------+---------+ | innodb_log_file_size | 5242880 | +----------------------+---------+
Для изменения его объема необходимо выполнить следующие операции (от пользователя root):
1. Об этом говорит сайт https://intellect.icu . Корректно останавливаем работу mysql сервера:
# для Debian (Ubuntu) /etc/init.d/mysql stop # для CentOS /etc/init.d/mysqld stop
2. Изменяем/добавляем параметр в конфигурационном файле ( /etc/mysql/my.cnf - Debian (Ubuntu), /etc/my.cnf - CentOS):
[mysqld] innodb_log_file_size = 64M
3. Важно! Переименовать существующие лог-файлы. Иначе при загрузке innodb будет рапортовать, что логфайл поврежден :
mv /var/lib/mysql/ib_logfile0 /var/lib/mysql/ib_logfile0_old mv /var/lib/mysql/ib_logfile1 /var/lib/mysql/ib_logfile1_old
4. Запустить mysql сервер.
# для Debian (Ubuntu) /etc/init.d/mysql start # для CentOS /etc/init.d/mysqld start
5. Проверить отсутствие ошибок в файле лога mysql демона:
# tail -n 100 /var/log/mysqld.log # для CentOS
...
130730 13:17:35 InnoDB: Log file ./ib_logfile0 did not exist: new to be created InnoDB: Setting log file ./ib_logfile0 size to 64 MB InnoDB: Database physically writes the file full: wait... 130730 13:17:35 InnoDB: Log file ./ib_logfile1 did not exist: new to be created InnoDB: Setting log file ./ib_logfile1 size to 64 MB InnoDB: Database physically writes the file full: wait... 130730 13:17:37 InnoDB: highest supported file format is Barracuda. InnoDB: The log sequence number in ibdata files does not match InnoDB: the log sequence number in the ib_logfiles!
Как видно по логу, innodb создал новые бинарные логи ib_logfile0 и ib_logfile1 нового объема.
Прочтение данной статьи про правильное изменение размера лога innodb innodb_log_file_size позволяет сделать вывод о значимости данной информации для обеспечения качества и оптимальности процессов. Надеюсь, что теперь ты понял что такое правильное изменение размера лога innodb innodb_log_file_size и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Базы данных - MySql (Maria DB)
Из статьи мы узнали кратко, но содержательно про правильное изменение размера лога innodb innodb_log_file_size
Комментарии
Оставить комментарий
Базы данных - MySql (Maria DB)
Термины: Базы данных - MySql (Maria DB)