MySQL: Ошибка репликации — Got fatal error 1236 from master when reading data from binary log

В категории Подсказки от 25 мая, 2021. Автор admin

После аварийной перезагрузки mysql-сервера, исполняющего роль master, может сломаться репликация. А на slave после выполнения show slave status\G можно лицезреть следующую ошибку:

Slave_IO_Running: No
Slave_SQL_Running: Yes
......
Last_IO_Errno: 1236
Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Client requested master to start replication from position > file size; the first event 'mysql-bin.000034' at 988867715, the last event read from '/db/mysql/mysql-bin.000034' at 4, the last byte read from '/db/mysql/mysql-bin.000034' at 4.'

Смотрим позицию, до которой дошел slave:

[slave]$ echo "show slave status \G" | mysql -u root -p | grep -E "[[:space:]]Master_Log_File|Read_Master_Log_Pos"
Master_Log_File: mysql-bin.000034
Exec_Master_Log_Pos: 988867715

Смотрим последнюю позицию, которая реально присутствует в этом бинлоге мастера:

[master]$ mysqlbinlog /db/mysql/mysql-bin.000034 | tail -n 12
'/*!*/;
# at 988777276
#180425  8:57:41 server id 1  end_log_pos 988777362 CRC32 0x3172f95b     Query    thread_id=8036410    exec_time=0    error_code=0
SET TIMESTAMP=1524635861/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
COMMIT
/*!*/;
DELIMITER ;
# End of log file
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;

И видим, что последняя позиция — 988777362. В то время как slave пытается исполнить позицию 988867715, которая, очевидно, дальше, чем 988777362. Вывод – надо «отмотать» slave немного назад:

[slave] mysql> stop slave;
[slave] mysql> change master to master_log_file='mysql-bin.000034', master_log_pos=988777362;
[slave] mysql> start slave;


Ну и далее show slave status\G нам говорит, что slave начал догонять master.

Тэги: , , ,

Медленная синхронизация RAID — mdadm

В категории Подсказки от 22 марта, 2021. Автор admin

Для ускорения перестроения RAID нужно записать в /proc/sys/dev/raid/speed_limit_min определяет максимальную скорость записи, которую mdadm будет использовать для реконструкции дискового массива.

Снимаем ограничение:

echo 300000 > /proc/sys/dev/raid/speed_limit_min
Смотрим, что получилось:

watch -n 1 cat /proc/mdstat

Тэги: , ,

Установка и настройка Sieve на CentOS7 с панелью управления VESTA

В категории Подсказки от 30 января, 2021. Автор admin

yum install dovecot-pigeonhole

Редактируем 20-managesieve.conf

nano /etc/dovecot/conf.d/20-managesieve.conf

раскомментируем протокол

protocols = $protocols sieve

Редактируем 10-master.conf

nano /etc/dovecot/conf.d/10-master.conf

Больше »

Тэги: , , ,