[an error occurred while processing this directive]

Пример настройки master-master репликации в MySQL
Шаг 1. Устанавливаем MySQL на два сервера:
   Master 1/Slave 2 ip: 192.168.16.4
   Master 2/Slave 1 ip : 192.168.16.5 

Шаг 2. Содержимое my.cnf сервера Master 1,  являющегося ведущим по умолчанию:

   [mysqld]
   datadir=/var/lib/mysql
   socket=/var/lib/mysql/mysql.sock
   old_passwords=1

   log-bin
   binlog-do-db=<database name>  # input the database which should be  replicated
   binlog-ignore-db=mysql            # input the database that should be ignored for replication
   binlog-ignore-db=test

   server-id=1

   [mysql.server]
   user=mysql
   basedir=/var/lib


   [mysqld_safe]
   err-log=/var/log/mysqld.log
   pid-file=/var/run/mysqld/mysqld.pid


Шаг 3. На сервере Master 1, создаем аккакнт для slave сервера (затем перезапускаем mysql):

   mysql> grant replication slave on *.* to 'replication'@192.168.10.5 \
identified by 'slave';


Шаг 4. Содержимое my.cnf сервера Master 2,  являющегося ведомым по умолчанию (slave):

   [mysqld]
   datadir=/var/lib/mysql
   socket=/var/lib/mysql/mysql.sock
   old_passwords=1

   server-id=2

   master-host = 192.168.16.4
   master-user = replication
   master-password = slave
   master-port = 3306

   [mysql.server]
   user=mysql
   basedir=/var/lib

   [mysqld_safe]
   err-log=/var/log/mysqld.log
   pid-file=/var/run/mysqld/mysqld.pid


Шаг 5. Активируем ведомый сервер:
   mysql> start slave;
   mysql> show slave status\G;

В отображенных параметрах поля Slave_IO_Running и  Slave_SQL_Running должны содержать "YES".


Шаг 6. На сервере Master 1 проверяем статус бинарного лога:

mysql> show master status;
+------------------------+----------+--------------+------------------+
| File                   | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------------+----------+--------------+------------------+
|MysqlMYSQL01-bin.000008 |      410 | adam         |                  |
+------------------------+----------+--------------+------------------+
1 row in set (0.00 sec)


Сценарий master-slave реализован, переходим к настройке master-master.

Шаг 7. На сервере Master2/Slave 1 редактируем my.cnf:

    [mysqld]
   datadir=/var/lib/mysql
   socket=/var/lib/mysql/mysql.sock
   # Default to using old password format for compatibility with mysql 3.x
   # clients (those using the mysqlclient10 compatibility package).
   old_passwords=1
   server-id=2

   master-host = 192.168.16.4
   master-user = replication
   master-password = slave
   master-port = 3306

   log-bin                     #information for becoming master added
   binlog-do-db=adam

   [mysql.server]
   user=mysql
   basedir=/var/lib

   [mysqld_safe]
   err-log=/var/log/mysqld.log
   pid-file=/var/run/mysqld/mysqld.pid

 
Шаг 8. Создаем slave аккаунт на Master 2 для Master 1:

   mysql> grant replication slave on *.* to 'replication'@192.168.16.4 identified by 'slave2';

 
Шаг 9.  Редактируем my.cnf на сервере Master 1, определив, что он является slave для Master 2:

   [mysqld]
   datadir=/var/lib/mysql
   socket=/var/lib/mysql/mysql.sock

   # Default to using old password format for compatibility with mysql 3.x
   # clients (those using the mysqlclient10 compatibility package).
   old_passwords=1


   log-bin
   binlog-do-db=adam
   binlog-ignore-db=mysql
   binlog-ignore-db=test

   server-id=1
   #information for becoming slave.
   master-host = 192.168.16.5
   master-user = replication
   master-password = slave2
   master-port = 3306

   [mysql.server]user=mysqlbasedir=/var/lib 

 
Шаг 10. Перезапускаем оба MySQL сервера. Для Master 1 выполняем

   mysql> start slave;

Для Master 2: 

   mysql > show master status;

Для Master 1:

mysql> show slave status\G;

В отображенных параметрах поля Slave_IO_Running и  Slave_SQL_Running должны содержать "YES".
 
07.10.2006 , Источник: http://www.howtoforge.com/mysql_mas...
Ключи: mysql, replication, cluster / Лицензия: CC-BY
Раздел:    Корень / Программисту и web-разработчику / SQL и базы данных / MySQL специфика / Оптимизация и администрирование MySQL

[an error occurred while processing this directive]

[an error occurred while processing this directive]