Изисквания: Твърдият диск на сървъра е пълен и се установява, че почти всички те са причинени от запълване на MySQL binlog. Как безопасно да почистя и изтрия binlog файловете?
Преглед:
Сървърното дисково пространство е пълно и се установява, че MySQL бинлогът е зает, както е показано на фигурата по-долу:
binlog е двоичен лог, поддържан от слоя Mysql sever, който е напълно различен от redo/undo log в INODB двигателя. Основно се използва за записване на SQL оператори, които актуализират или потенциално обновяват mysql данни, записват всички DDL и DML (с изключение на data query операторите) и ги запазват под формата на транзакции на диск, както и за запазване на времето, което изисква изпълнението на операторите.
Влезте в MySQL базата данни и изпълнете следната команда, за да видите текущия списък с binlog файлове:
Почистете файловете от binlog log, за да освободите място, почистете определени binlog файлове и изпразните всички binlog файлове, с следните команди:
Въпреки че този проблем е решен, той може да се случи в бъдеще и трябва да го настроимexpire_logs_daysза автоматично почистване на исторически binlog файлове, като се пазят само файлове за определен период от време.
Използвайте mysql --help | Командата GREP CNF направи заявка към конфигурационния файл, както е показано на следното изображение:
Търсене на конфигурации, свързани с binlog, през командния ред:
Преразгледа/etc/my.cnfКонфигурацията е следната:
След това рестартирайте mysqld услугата със следната команда:
(Край)
|