Назад | Перейти на главную страницу

MySQL - невозможно включить двоичное ведение журнала

Я пытаюсь включить двоичное ведение журнала, чтобы я мог настроить репликацию главный-подчиненный между двумя серверами. Я работаю с существующим сервером с большим количеством данных, и я пытаюсь сбросить данные с помощью следующей команды:

mysqldump -u root -p --all-databases --master-data > masterdump.sql

но я получаю сообщение об ошибке: mysqldump: Error: Binlogging on server not active.

Я следил за всеми видами руководств о том, как включить двоичное ведение журнала, но ничего не помогло. Я убедился, что добавил в my.cnf следующие параметры:

server-id    = 1
log_bin      = /var/log/mysql/mysql-bin.log
sync_binlog  = 1

Когда я перезапускаю MySQL, это занимает некоторое время (я предполагаю, что это из-за огромного размера базы данных), около 60 секунд, но в конечном итоге запускается. Однако, когда я проверяю /var/log/mysql/error.log, Я обнаружил следующую ошибку (повторяющуюся сотни раз):

InnoDB: Unable to lock ./ibdata1, error: 11
InnoDB: Check that you do not already have another mysqld process

Итак, я пошел искать все процессы mysqld, запустив pstree и я нашел следующее:

root@my_server:~# pstree
init---some stuff
     |--
     |--mysqld---10*[{mysqld}]
     |--
     |--sudo---mysqld---23*[{mysqld}]

Вот где я застрял. Я не знаю, нормально ли иметь mysqld И sudo mysqld оба работают. Сервер обслуживается ServerPilot, который [я думаю] установил для меня MySQL.

Указывает ли какое-либо из этих свидетельств на какую-либо причину, по которой двоичное ведение журнала не включается?

Похоже, что несколько процессов mysqld вызывали проблемы. Благодаря советам от этот вопрос Мне удалось убить дерево процессов под sudo mysqld и двоичное ведение журнала началось сразу. После этого работа остальной части репликации ведущий-ведомый произошла довольно быстро, благодаря это потрясающее руководство.