MySQL 主从复制是一种常见的数据库架构模式,用于实现数据的冗余和高可用性。以下是关于 MySQL 主从复制的基础概念、优势、类型、应用场景以及搭建步骤和常见问题解决方法。
主从复制:在 MySQL 中,主服务器(Master)负责处理写操作,而从服务器(Slave)则复制主服务器的数据并处理读操作。这种架构可以提高数据库的性能和可靠性。
以下是 MySQL 主从复制的搭建步骤:
编辑 MySQL 配置文件(通常是 my.cnf
):
[mysqld]
server-id=1
log-bin=mysql-bin
binlog-do-db=your_database_name
重启 MySQL 服务使配置生效。
在主服务器上执行:
CREATE USER 'repl'@'%' IDENTIFIED BY 'your_password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;
在主服务器上执行:
SHOW MASTER STATUS;
记录下 File
和 Position
的值。
编辑从服务器的 MySQL 配置文件:
[mysqld]
server-id=2
relay-log=mysql-relay-bin
log-slave-updates=1
read-only=1
重启 MySQL 服务使配置生效。
在从服务器上执行:
CHANGE MASTER TO
MASTER_HOST='master_host',
MASTER_USER='repl',
MASTER_PASSWORD='your_password',
MASTER_LOG_FILE='recorded_file',
MASTER_LOG_POS=recorded_position;
START SLAVE;
将 master_host
、recorded_file
和 recorded_position
替换为实际值。
在从服务器上执行:
SHOW SLAVE STATUS\G
确保 Slave_IO_Running
和 Slave_SQL_Running
都显示为 Yes
。
SHOW SLAVE STATUS
输出,确保复制线程正常运行。通过以上步骤和解决方案,可以有效地搭建和维护 MySQL 的主从复制架构。
领取专属 10元无门槛券
手把手带您无忧上云