MySQL主从复制是一种数据库复制技术,它允许一个MySQL数据库(主库)的数据被复制到一个或多个其他MySQL数据库(从库)。主库负责处理写操作,而从库则处理读操作,从而实现读写分离,提高系统的整体性能和可靠性。
假设我们有两台服务器,ServerA作为主库,ServerB作为从库。
编辑MySQL配置文件/etc/my.cnf
:
[mysqld]
server-id=1
log_bin=mysql-bin
binlog_format=row
重启MySQL服务:
sudo systemctl restart mysqld
创建用于复制的用户:
CREATE USER 'replication_user'@'ServerB_IP' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'ServerB_IP';
FLUSH PRIVILEGES;
查看主库状态:
SHOW MASTER STATUS;
记录下File
和Position
的值,稍后在从库上配置时需要用到。
编辑MySQL配置文件/etc/my.cnf
:
[mysqld]
server-id=2
relay_log=mysql-relay-bin
log_bin=mysql-bin
binlog_format=row
read_only=1
重启MySQL服务:
sudo systemctl restart mysqld
在从库上配置主库信息:
CHANGE MASTER TO
MASTER_HOST='ServerA_IP',
MASTER_USER='replication_user',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='recorded_file_name',
MASTER_LOG_POS=recorded_position;
启动从库复制:
START SLAVE;
检查从库复制状态:
SHOW SLAVE STATUS\G;
确保Slave_IO_Running
和Slave_SQL_Running
都为Yes
,表示主从复制正常工作。
企业创新在线学堂
企业创新在线学堂
serverless days
云+社区沙龙online [国产数据库]
腾讯云数据库TDSQL训练营
云+社区技术沙龙[第20期]
腾讯云数据库TDSQL训练营
算力即生产力系列直播
算力即生产力系列直播
云原生正发声
云+社区沙龙online [国产数据库]
领取专属 10元无门槛券
手把手带您无忧上云