CentOS下MySQL主从复制搭建双机热备教程

需积分: 13 11 下载量 190 浏览量 更新于2024-09-11 1 收藏 365KB DOCX 举报
本篇教程详细介绍了如何在MySQL数据库环境中实现主从服务器的双机热备,以提高系统的可用性和数据安全性。教程针对的是两台运行CentOS 6.2的MySQL服务器,分别是主服务器192.168.21.169(MySQLMaster)和从服务器192.168.21.168(MySQLSlave),它们都使用mysql-5.5.22版本。为了确保兼容性,建议主从服务器的MySQL版本保持一致。 步骤如下: 1. 安装与配置MySQL: - 在两台服务器上安装MySQL 5.5.22,首先确保防火墙允许3306端口的TCP连接,通过编辑`/etc/sysconfig/iptables`配置文件并重启防火墙来实现。 - 关闭SELinux,以避免可能因安全策略限制导致的问题,通过编辑`/etc/selinux/config`并注释掉SELinux相关行来禁用。 2. 配置MySQL主服务器: - 在MySQLMaster上创建复制用户,用于从服务器连接,如`GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;` - 设置主服务器的二进制日志位置和权限,以允许从服务器读取,如`CHANGE MASTER TO MASTER_HOST='192.168.21.169', MASTER_USER='slave_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=4;` 3. 配置MySQL从服务器: - 创建从服务器的配置文件`my.cnf`,指定主服务器的连接参数,如`[mysqld] server-id=2; log-bin=mysql-bin; binlog-do-db=<dbname>;`(dbname替换为主服务器的数据库名) - 启动从服务器,使其自动连接到主服务器并开始同步数据,如`mysql.server start --wsrep-slave-address=192.168.21.169:3306` 4. 验证与监控: - 在从服务器上检查`SHOW SLAVE STATUS\G`命令,确认复制状态正常,如`Seconds_Behind_Master`为0表示同步成功。 - 可以使用`pt-heartbeat`工具或其他监控工具持续监控主从服务器的状态,确保数据一致性。 通过以上步骤,实现了Web服务器(192.168.21.129)上的应用程序能够通过MySQL主服务器(192.168.21.169)访问数据库,并且从服务器(192.168.21.168)会实时地同步主服务器的数据变更。这种架构极大地增强了系统的可用性和数据保护能力,尤其在高并发场景下,可以提供更好的服务连续性和灾备能力。