Назад | Перейти на главную страницу

Репликация Amazon RDS с внешним ведомым устройством

Недавно я настроил репликацию с внешним ведущим MySQL и RDS в качестве ведомого, но теперь мне нужно отменить эту конфигурацию и использовать RDS в качестве ведущего, а другой экземпляр - в качестве ведомого. На самом деле я использую vpn, а другой экземпляр находится за пределами AWS.

Я изменил хост сервера и пароль, но получил эту ошибку:

141103 11:35:44 [ERROR] Error reading packet from server: Binary log is not open ( server_errno=1236)
141103 11:35:44 [ERROR] Slave I/O: Got fatal error 1236 from master when reading data from binary log: 'Binary log is not open', Error_code: 1236
141103 11:35:44 [Note] Slave I/O thread exiting, read up to log 'mysql-bin.000007', position 284079763
141103 11:37:09 [Note] Error reading relay log event: slave SQL thread was killed

Возможно, я не получил правильного имени файла журнала и позиции? но я не могу найти их в RDS.

Найти правильную позицию довольно сложно.

  • Раскрутите реплику чтения RDS
  • остановить репликацию вручную с помощью mysql.rds_stop_replication
  • использовать mysql> SHOW SLAVE STATUS\G чтобы получить необходимую информацию для следующих шагов
  • то Exec_Master_Log_Pos переменная сообщит вам позицию главного бинлога, в которой в настоящее время находится ведомое устройство
  • имя файла binlog можно найти в переменной Relay_Master_Log_File

Еще один совет: будьте осторожны с этой настройкой. AWS официально не поддерживает выполнение постоянной репликации на внешнее ведомое устройство. Пожалуйста, посмотрите ...

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/MySQL.Procedural.Exporting.NonRDSRepl.html