具有外部从属功能的 Amazon RDS 复制

具有外部从属功能的 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 中找到它们。

答案1

找到正确的位置有点棘手。

  • 启动 RDS 只读副本
  • 使用以下方式手动停止复制mysql.rds_stop_replication
  • 用于mysql> SHOW SLAVE STATUS\G获取下一步所需的信息
  • Exec_Master_Log_Pos变量将告诉您从属服务器当前的主 binlog 位置
  • binlog 文件名可以在变量中找到Relay_Master_Log_File

另一个建议:请谨慎使用此设置。AWS 不正式支持对外部从属设备运行永久复制。请参阅...

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

相关内容