1.rds上默认会有server-id=1****,只需要配置从数据库; 2.从数据库的配置流程: 1.[mysqld] log-bin = mysql-bin-changelog #要和主库中的名字一样 relay-log= mysql-relay-bin-changelog read-only=1 log-slave-updates=1 binlog-do-db = p2p_live #指定需要同步的数据库 binlog-ignore-db=mysql #系统的数据库不同步 default-time-zone = 'UTC' #时区可能会导致同步失败 2.登录主库,用show master status; 获取
3.登录从库,配置slave的相关信息: change master to master_host = '主库地址', master_port = 3306, master_user='主库用户名', master_password='主库密码';
4.执行 start slave;
问题总结:
1.rds的mysql版本是5.7,有个mysql是5.5,能配置成功,但是过一会就会,有两方面的原因,1.之前的主从配置的日志干扰,2.两个版本的差异,就卸载了5.5,升级成5.6;
2.报错:Slave SQL: Error 'Unknown or incorrect time zone: 'UTC'' on query. Default database: 'configuration'. Query: 'BEGIN', Error_code: 1298 原因:rds主库 用show variables like '%time_zone%'; 看两个参数都是UTC,而从库的time_zone的值为SYSTEM; 解决: 退出mysql;
在命令行输入:mysql_tzinfo_to_sql /usr/share/zoneinfo/|mysql -u root mysql -p密码;
进入mysql,执行:
set global time_zone="UTC";
和flush privileges;
退出mysql后再进入; 参考:https://blog.csdn.net/lucylove3943/article/details/80994379 3.rds 的安全组的问题,跨区时内网ip不可用,安全组可多选。