SpecialistOff.NET / Вопросы / Статьи / Фрагменты кода / Резюме / Метки / Помощь / Файлы
НазадМетки: mysql репликация кластер
Указываем
Файл /etc/my.cnf
[mysqld]
server-id = 1
log-bin = /var/lib/mysql/mysql-bin
replicate-do-db = testdb
Добавим пользователя, под правами которого будет производится репликация
GRANT replication slave ON *.* TO "replication"@"%" IDENTIFIED BY "password";
FLUSH PRIVILEGES;
Перезапускаем сервер для применения настроек
systemctl restart mysql
Проверяем запуск
SHOW MASTER STATUS\G
Блокируем БД для записи
FLUSH TABLES WITH READ LOCK;
SET GLOBAL read_only = ON;
Проверяем состояние ведущего и запомним значения File и Position
SHOW MASTER STATUS\G
Делаем дамп БД
mysqldump -u<username> -p<password> <database> > ~/dump_`date +%y_%m_%d`.sql
Снимаем блокировку
SET GLOBAL read_only = OFF;
Файл /etc/my.cnf
[mysqld]
server-id = 2
relay-log = /var/lib/mysql/mysql-relay-bin
relay-log-index = /var/lib/mysql/mysql-relay-bin.index
replicate-do-db = testdb
Перезапускаем сервер для применения настроек
systemctl restart mysql
Проверяем запуск
SHOW MASTER STATUS\G
Восстанавливаем данные из дампа
Запускаем репликацию
CHANGE MASTER TO MASTER_HOST = "192.168.1.101 ", MASTER_USER = "replication ", MASTER_PASSWORD = "password ", MASTER_LOG_FILE = "mysql-bin.000003 ", MASTER_LOG_POS = 98;
START SLAVE;
Проверка репликации
SHOW SLAVE STATUS\G