среда, 17 августа 2011 г.

MySQL настройка репликации

Пример быстрой настройки репликации.

На master сервере создаем mysql пользователя специально для репликации с соответствующими правами

mysql> grant replication slave on *.* to 'repl_user'@'%' identified by 'secret';

выполняем первоначальную синхронизацию master и slave серверов, копируем базы данных с master на slave. Это можно сделать просто через бэкап всех баз на master'e и разворачивании этого бэкапа на slave сервере. После чего выключаем mysql сервер

на том же master сервере вносим в главный конфигурационный файл my.cnf

server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
bind-address = 0.0.0.0

запускаем mysql сервер и выполняем очистку существующих бинарных логов на нем

mysql> reset master;

выключаем slave сервер, если он включен, вносим в my.cnf и обратно включаем

server-id = 2
master-host = 192.168.1.100
master-user = repl_user
master-password = secret

на Debian потребуется перенос файла /etc/mysql/debian.cnf на slave сервер, так как в нем хранятся данные для доступа скриптов ОС к mysql серверу

Теперь проверяем состояние и работоспособность настроенной репликации

на master сервере

mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 |      191 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

на slave сервере

mysql> show slave status;

часть вывода

               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.1.100
                  Master_User: repl_user
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000003
          Read_Master_Log_Pos: 191
               Relay_Log_File: mysqld-relay-bin.000006
                Relay_Log_Pos: 336
        Relay_Master_Log_File: mysql-bin.000003
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

Комментариев нет:

Отправить комментарий