MySQL5.6版本主从同步配置实践
内容提要
本文介绍了在CentOS系统上安装和配置MySQL5.6的过程,包括主服务器和从服务器的安装、配置BinaryLog、备份和导入数据,以及主从设置。
延伸解读
主从配置的关键步骤与注意事项
配置MySQL 5.6主从同步时,需确保主从服务器的server-id不同,且server_uuid不一致。首次备份需锁表导出数据并记录File和Position,从库导入数据后需正确设置CHANGE MASTER参数。若直接复制数据目录,可能导致server_uuid相同,引发复制错误,需检查auto.cnf文件。
常见错误:server_uuid冲突的解决方法
MySQL 5.6引入server_uuid概念,主从复制结构中各节点的server_uuid必须唯一。若直接拷贝数据目录,server_uuid可能相同,导致从库I/O线程停止。可通过SHOW VARIABLES LIKE '%server_uuid%'查看,并确保主从的server-id不同,同时检查/var/lib/mysql/auto.cnf中的uuid值。
主主同步的扩展配置
文章提到,若需实现主主同步,只需将Master和Slave的配置角色互换,即在原Slave上重复Master的配置步骤,并在原Master上执行Slave的配置。但需注意,主主同步可能带来数据冲突风险,需谨慎设计自增ID等机制。
Q&A
如何在CentOS上安装MySQL5.6?
可以通过手动安装MySQL官网的repo包来安装MySQL5.6,禁用默认的MySQL版本后,使用yum命令安装。
主从数据库的IP地址分别是什么?
主数据库的IP地址是192.168.1.1,副数据库的IP地址是192.168.1.2。
如何配置主数据库的BinaryLog?
在主数据库的my.cnf文件中添加log-bin和server-id等配置项,然后重启数据库使配置生效。
如何在从数据库中导入初始数据?
可以使用命令mysql -u root -p [databasename] < '[database_backup]'来导入初始数据。
主从数据库的server_uuid有什么要求?
主从数据库的server_uuid必须不一致,以避免复制错误。
如何设置从数据库的File和Position值?
使用CHANGE MASTER TO命令设置从数据库的MASTER_LOG_FILE和MASTER_LOG_POS值。