HCRM博客

CentOS环境下配置MySQL主从复制的详细步骤

在CentOS系统上配置MySQL主从复制(MasterSlave Replication)是实现数据库高可用性和负载均衡的常见方法,以下是关于如何在CentOS上设置MySQL主从复制的详细步骤:

1、安装MySQL

CentOS环境下配置MySQL主从复制的详细步骤-图1
(图片来源网络,侵权删除)

在两台服务器上分别执行以下命令安装MySQL

  • sudo yum install y mysqlserver

启动并启用MySQL服务

  • sudo systemctl start mysqld
  • sudo systemctl enable mysqld

2、配置主服务器(Master)

登录MySQL

  • mysql u root p

创建用于复制的用户并授权

  • CREATE USER 'replica'@'%' IDENTIFIED BY 'password';
  • GRANT REPLICATION SLAVE ON *.* TO 'replica'@'%';
  • FLUSH PRIVILEGES;

查看主服务器状态和位置信息

CentOS环境下配置MySQL主从复制的详细步骤-图2
(图片来源网络,侵权删除)
  • SHOW MASTER STATUS;

记录下FilePosition的值,后续配置从服务器时会用到。

修改主服务器配置文件/etc/my.cnf

  • [mysqld]
  • serverid=1
  • logbin=mysqlbin

重启MySQL服务使配置生效

  • sudo systemctl restart mysqld

3、配置从服务器(Slave)

登录MySQL

  • mysql u root p

停止从服务器的MySQL服务

CentOS环境下配置MySQL主从复制的详细步骤-图3
(图片来源网络,侵权删除)
  • STOP SLAVE;

配置从服务器

  • CHANGE MASTER TO MASTER_HOST='主服务器IP', MASTER_USER='replica', MASTER_PASSWORD='password', MASTER_LOG_FILE='记录的File值', MASTER_LOG_POS=记录的Position值;

启动从服务器的复制功能

  • START SLAVE;

查看从服务器状态

  • SHOW SLAVE STATUS \G;

确认Slave_IO_RunningSlave_SQL_Running都为Yes

4、测试主从复制

在主服务器上创建一个数据库或表,并在从服务器上检查是否成功复制。

5、常见问题及解决方法

问题1:从服务器无法连接到主服务器

解决方法:检查防火墙设置,确保主服务器的3306端口开放;检查主从服务器之间的网络连接是否正常;确认从服务器配置中的MASTER_HOSTMASTER_USERMASTER_PASSWORD等信息是否正确。

问题2:复制过程中出现数据不一致

解决方法:检查主从服务器的版本是否一致;确认主服务器上的操作是否都被正确记录到二进制日志中;在从服务器上执行STOP SLAVE; SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1; START SLAVE;跳过不一致的数据。

以下是两个相关问答FAQs:

1、问:如何监控MySQL主从复制的状态?

答:可以通过在主从服务器上分别执行SHOW MASTER STATUS;SHOW SLAVE STATUS \G;来查看主从复制的状态,还可以使用第三方工具如Nagios、Zabbix等进行监控。

2、问:如果需要切换主从服务器的角色,应该如何操作?

答:首先需要停止主从复制,然后将原主服务器设置为从服务器,将原从服务器设置为新的主服务器,具体步骤包括修改配置文件中的serverid,重新配置主从关系,并重新启动MySQL服务。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/23386.html

分享:
扫描分享到社交APP
上一篇
下一篇