MySQL Slave сервер пишет: Client requested master to start replication from impossible position; the first event 'mysql-bin.000071' at 682157393, the last event read from './mysql-bin.000071' at 4, the last byte read from './mysql-bin.000071' at 4.'

Аватар пользователя admin

Полный текст ошибки выглядит так:

Got fatal error 1236 from master when reading data from binary log: 'Client requested master to start replication from impossible position; the first event 'mysql-bin.000071' at 682157393, the last event read from './mysql-bin.000071' at 4, the last byte read from './mysql-bin.000071' at 4.'

 

При этом репликация останавливается.

Ошибка означает, что клиент (slave) пытается выполнить репликацию с недопустимой позиции бинарного лога. Обычно это происходит из-за того, что данные были повреждены в результате нештатной перезагрузки одного из серверов.

Собственно способов решения ровно 2:

  1. Остановить slave. Перезалить базу данных с master'а на slave и снова запустить slave. Однако, это обычно долго и даже не всегда возможно.
  2. Остановить slave и выполнить команды:
    CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000072', MASTER_LOG_POS=4;

    и снова запустить slave. В этом случае мы как бы пропускаем проблемное место, но база на slave-сервере теперь будет чем-то отличаться от базы на master'е. Иногда это некритично, но иногда недопустимо.

0
Ваш рейтинг: Нет