CentOS6 双主MySQL高可用配置及Keepalived设置

需积分: 6 1 下载量 181 浏览量 更新于2024-09-10 收藏 125KB DOCX 举报
"在本文中,我们将探讨如何在CentOS6环境下通过Keepalived和MySQL进行多机互为主从配置,以实现双主高可用性。这种方法有助于确保数据的连续性和系统的稳定性,防止单点故障。以下是配置步骤的详细说明。" 在配置多机主从模式时,首要任务是确保所有涉及的MySQL服务器都具有安全的root用户密码。这通常包括停止MySQL服务,然后以无权限限制模式启动它,以便可以更改root用户的密码。在命令行中,可以使用`service mysqld stop`来停止服务,接着运行`mysqld --user=mysql --skip-grant-tables --skip-networking`来启动MySQL而不检查权限。在新的终端窗口中,登录MySQL并使用`UPDATE`语句设置新的root密码,例如`UPDATE users SET Password=password('impadmin') WHERE user='root' AND host='localhost';`。更新后,使用`FLUSH PRIVILEGES;`刷新权限,然后`QUIT;`退出。 接下来,配置同步账户和权限,这涉及到在每台服务器上设置唯一的`server-id`,以区分主从角色。例如,将`server-id=1`设置在第一台服务器(db1)的`/etc/my.cnf`文件的`[mysqld]`段中,而`server-id=2`设置在第二台服务器(db2)中。同时,需要启用`log-bin`和`relay-log`选项,以便记录和传递数据库更改。例如,`log-bin=mysql-bin`开启二进制日志,`relay-log=mysql-relay-bin`开启中继日志。 为了实现数据过滤,可以使用`replicate-wild-ignore-table`选项,这将忽略特定表或数据库的同步。例如,`replicate-wild-ignore-table=mysql.%`、`test.%`、`information_schema.%`和`performance_schema.%`分别排除了mysql、test、information_schema和performance_schema数据库的所有表的同步。这样可以避免不必要的数据传输和潜在冲突。 配置完成后,还需要在两台服务器之间建立复制关系。这通常涉及在一台服务器上设置主服务器的`MASTER_LOG_FILE`和`MASTER_LOG_POS`,然后在另一台服务器上设置为从服务器,并启动复制进程。在两台服务器上配置Keepalived是为了实现VIP(虚拟IP)漂移,当主服务器出现故障时,Keepalived会自动将VIP转移到从服务器,确保服务的连续性。 CentOS6环境下多机互为主从配置结合Keepalived和MySQL的双主高可用性方案,能够提供高效的数据同步和故障转移机制,保障系统的稳定运行。这种配置适用于对数据一致性和系统可用性要求较高的场景,如电商、金融等关键业务系统。