SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 13.07.2007 11:10:24

Андрей
Участник
Зарегистрирован: 13.07.2007
Сообщений: 2

Помогите плиз с репликацией

Здравствуйте...
Такая проблема....
Делаю слепок БД, устанавливаю его на SLAVE сервере, регистрирую на MASTER`е  нового пользователя репликации командой:

GRANT REPLICATION SLAVE ON *.*
TO 'user'@'%' IDENTIFIED BY 'pass';

Настраиваю на мастере в my.cnf
[mysqd]
log-bin
server-id=1

Настраиваю клиента:

в my.cnf:
[mysqld]
server-id=2

mysql -> CHANGE MASTER
         --> MASTER_HOST='host',
         --> MASTER_USER='user',
         --> MASTER_PASSWORD='pass',
         --> MASTER_LOG_FILE='mysql-bin.000025',
         --> MASTER_LOG_POS=32928

Когда запускаю START SLAVE статус находиться в постоянном состоянии "Connecting to master", сервер его не пускает и никакая репликация не происходит, кто нить может сказать что делать??

ОС: Mandriva Linux 2007, ver MySQL: 5.0.24

Неактивен

 

#2 13.07.2007 13:11:35

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Помогите плиз с репликацией

Попробуйте соединиться со слейва на мастер через клиент mysql.

Скорее всего, включен firewall или, например, установлен bind-address.
Про Mandriva не могу сказать, в Debian второе установлено по-умолчанию
в 127.0.0.1.

Неактивен

 

#3 13.07.2007 18:21:44

Андрей
Участник
Зарегистрирован: 13.07.2007
Сообщений: 2

Re: Помогите плиз с репликацией

Когда делаю START SLAVE, Slave_SQL_Running находиться в запущенном состоянии, а Slave_IO_Running находится в состоянии No. Как я понимаю этот попток должен переходить в активное состояния только после установки соединения с сервером? И ещё когда я делаю SHOW PROCESSLIST\G; получаю такую картину

*************************** 1. row ***************************
Id: 628
User: system user
Host:
db: NULL
Command: Connect
Time: 285
State: Connecting to master
Info: NULL
*************************** 2. row ***************************
Id: 629
User: system user
Host:
db: NULL
Command: Connect
Time: 285
State: Has read all relay log; waiting for the slave I/O thread to update it
Info: NULL

Как видно запущены оба потока, один пытаеться установить соединение с сервером, а второй находиться в ожидании данных от сервера для обновления. А когда делаю SHOW PROCESSLIST на MASTER сервере  то получаю такое:

Id: 339
User: root
Host: localhost
db: NULL
Command: Query
Time: 0
State: NULL
Info: SHOW PROCESSLIST

С чем это может быть связано, потому что я все настройки перепровил, и начал терять веру в жизнь smile.

Неактивен

 

#4 13.07.2007 18:44:54

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Помогите плиз с репликацией

Наверное, я не достаточно ясно сформулировал smile

Код:

mysql -urepl_user -prepl_pass -hrepl_host

Попробуйте подключиться клиентом. Если подключитесь - тогда проблема на slave,
если нет - проблема на мастере. Опыт подсказывает, что проблема на мастере.

Если подключиться не можете - проверьте состояние firewall и то, какие адреса слушает
mysql:

Код:

$ netstat -an | grep 3306
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

Если там написано 0.0.0.0:3306 - слушает все адреса, если 127.0.0.1 (как у меня) - то только
внутренний, а, значит, подключиться с другого компьютера Вы не сможете (для подключения
нужно убрать bind-address из my.cnf).

Еще бывает полезно читать error.log - туда скидываются сообщения об ошибках.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson