在企业级应用中,为了提高数据库的可用性、读取性能以及实现数据备份,CentOS数据库复制(尤其是MySQL主从复制)是一种非常常见且有效的解决方案。本文将面向初学者,详细讲解如何在CentOS系统上配置MySQL主从复制,确保即使你是小白也能轻松上手。
MySQL主从复制是指将一台MySQL服务器(称为主服务器,Master)的数据自动复制到另一台或多台MySQL服务器(称为从服务器,Slave)的过程。主服务器负责写操作,从服务器负责读操作,从而实现数据库同步和负载均衡。
1. 编辑 MySQL 配置文件:
[root@master ~]# vi /etc/my.cnf# 在 [mysqld] 段落下添加以下内容:[mysqld]server-id = 1log-bin = mysql-binbinlog-do-db = your_database_name # 可选:指定要复制的数据库binlog-ignore-db = mysql # 可选:忽略的数据库 2. 重启 MySQL 服务:
[root@master ~]# systemctl restart mysqld 3. 登录 MySQL,创建用于复制的用户:
mysql> CREATE USER 'repl_user'@'%' IDENTIFIED BY 'StrongPassword123!';mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'%';mysql> FLUSH PRIVILEGES; 4. 查看主服务器状态,记录 File 和 Position 值:
mysql> SHOW MASTER STATUS;+------------------+----------+--------------+------------------+| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |+------------------+----------+--------------+------------------+| mysql-bin.000001 | 154 | your_db | mysql |+------------------+----------+--------------+------------------+ 1. 编辑 MySQL 配置文件:
[root@slave ~]# vi /etc/my.cnf[mysqld]server-id = 2relay-log = mysql-relay-binread-only = 1 2. 重启 MySQL 服务:
[root@slave ~]# systemctl restart mysqld 3. 登录 MySQL,配置主从连接:
mysql> CHANGE MASTER TO MASTER_HOST='192.168.1.10', MASTER_USER='repl_user', MASTER_PASSWORD='StrongPassword123!', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=154;mysql> START SLAVE; 4. 检查从服务器状态:
mysql> SHOW SLAVE STATUS\G# 确保以下两项为 Yes:Slave_IO_Running: YesSlave_SQL_Running: Yes 在主服务器上创建一个测试表或插入数据:
mysql> USE your_database_name;mysql> CREATE TABLE test_replication (id INT PRIMARY KEY, name VARCHAR(50));mysql> INSERT INTO test_replication VALUES (1, 'Hello Replication'); 然后在从服务器上查询该表,如果能看到相同数据,说明CentOS MySQL配置成功,数据库同步教程中的复制功能已正常工作!
firewall-cmd --add-port=3306/tcp --permanent 开放端口SHOW MASTER STATUS 获取最新位置通过以上步骤,你已经成功在 CentOS 系统上完成了 MySQL主从复制 的配置。这不仅提升了数据库的可靠性,也为后续的高可用架构打下基础。希望这篇 数据库同步教程 能帮助你轻松掌握 CentOS数据库复制 的核心技能!
本文由主机测评网于2025-12-09发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025125416.html