wiki:technical:restore-replication-from-dump
Это старая версия документа!
Восстановление репликации master-slave MySQL
Действия на мастере
# На мастере запоминаем текущую позицию и имя файла: mysql> show master status\G *************************** 1. row *************************** File: mysql-bin.045317 Position: 41951754 Binlog_Do_DB: Binlog_Ignore_DB: Executed_Gtid_Set: 1 row in set (0.00 sec)
# На мастере выполняем дамп нужной БД и переливаем ее на Slave: mysqldump -u root -p'$PASSWD' $DB_NAME --add-drop-table parsers | gzip -c | ssh $IP-SLAVE 'cat > /root/dump.sql.gz'
На слейве
# На слейве разворачиваем дамп в БД: zcat /root/dump.sql.gz | mysql -u 'root' -p'$PAsswd' $DB_NAME # На слейве меняем файл и позицию mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.045317', MASTER_LOG_POS=41951754; # И стартуем репликацию: mysql> START SLAVE;
Если дамп сделан без проверки удаления и очистки таблиц, то можно очистить так:
mysqldump --add-drop-table --no-data $DB_NAME | grep ^DROP | sed -e 's/DROP TABLE IF EXISTS/TRUNCATE TABLE/g' | mysql $DB_NAME
wiki/technical/restore-replication-from-dump.1661439964.txt.gz · Последнее изменение: 2022/08/25 18:06 — Diman