Репликация данных MySQL Master-Master не работает с хоста 1 на хост 2; но работает с host2 на host1
У нас есть две базы данных MySQL, настроенные как мастер - мастер. У нас были проблемы с репликацией данных с хоста на хост2. Я новичок в управлении базами данных.
Журнал ошибок приведен ниже
host1:/$ cat /var/log/mysql/error.log
131115 13:51:06 [ERROR] Slave I/O: error reconnecting to master 'host1@host.company.com:3306' - retry-time: 60 retries: 86400, Error_code: 2003
Ошибка повторяется. Я прошел этот урок http://dev.mysql.com/doc/refman/5.5/en/replication-howto.html и этот http://dev.mysql.com/doc/refman/5.0/en/can-not-connect-to-server.html для справки по коду ошибки 2003.
Я проверил из наших журналов, что mysqld работал все время и что на сервере MySQL не было простоев.
Мои гранты для host2, который успешно реплицирует данные с host2 на host1, приведены ниже
mysql> show grants;
-------------------------------+
| Grants for admin@localhost |
+--------------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' IDENTIFIED BY PASSWORD '*53CB11958EE3FBA4B6C0CECA582369151A97FFA9' |
+-------------------------------------------------------------------------------------------
Мои разрешения на хосте 1, которые не успешно реплицируются с хоста 1 на хост 2, приведены ниже.
mysql> show grants;
+-------------------------------------------------------------------------------------------
| Grants for admin@localhost |
+-------------------------------------------------------------------------------------------
| GRANT USAGE ON *.* TO 'admin'@'localhost' IDENTIFIED BY PASSWORD '*53CB11958EE3FBA4B6C0CECA582369151A97FFA9' |
| GRANT ALL PRIVILEGES ON `MyDatabase`.* TO 'admin'@'localhost' |
+-------------------------------------------------------------------------------------------
Основной статус: host2 (правильная репликация на host 1)
mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000235 | 12804977 | | |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
host1 (неправильно реплицируется на host 2)
mysql> show master status;
ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER,REPLICATION CLIENT privilege(s) for this operation
Я не совсем уверен, что я делаю неправильно. Я посмотрел на my2.cnf узла host2, который успешно реплицируется на узел, имеет следующую дельту. И для host1, и для host2 настроены разные параметры идентификатора сервера. Оба значения больше 0.
server-id = 1
replicate-do-db = MyDatabase
innodb_buffer_pool_size = 2G
innodb_flush_method = O_DIRECT
read_buffer_size = 64M
sort_buffer_size = 64M
Мой хост1 my.cnf delta
server-id = 3
Я не знаю, что привело к сбою репликации. Я посмотрел на эти ответы так ссылки, прежде чем писать здесь, но я не совсем знаю, что мне нужно делать.
Mysql Master Master Replication, MySQL replication - Ошибка при подключении к master и не удалось выяснить, что я сделал неправильно. Оба хоста в БД имеют одинаковые имя пользователя и пароль.