离线配置MySQL主从同步需先在主从服务器安装MySQL二进制包,配置主库server-id、开启binlog,创建复制用户并记录日志位置;从库设置唯一server-id,启动中继日志和只读模式,执行CHANGE MASTER指向主库并启动复制;最后检查Slave_IO_Running和Slave_SQL_Running均为Yes确认同步正常,确保防火墙开放3306端口。

在离线环境下配置MySQL主从同步,关键在于提前准备好安装包和依赖,并手动完成配置。由于无法使用yum或apt在线安装,所有操作需依赖本地文件。以下是具体步骤。
1. 准备MySQL离线安装环境
确保主从服务器都已完成MySQL的离线安装。
- 下载与系统匹配的MySQL二进制包(如mysql-8.0.x-linux-glibc2.12-x86_64.tar.xz)
- 解压并安装到指定目录,例如 /usr/local/mysql
- 初始化数据库:bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
- 配置my.cnf并启动服务
2. 配置主库(Master)
编辑主库的my.cnf文件,在[mysqld]段添加以下内容:
server-id = 1log-bin = mysql-bin
binlog-format = ROW
binlog-do-db = your_database_name # 可选:只同步指定库
重启MySQL服务后登录数据库,创建用于复制的用户:
CREATE USER 'repl'@'%' IDENTIFIED BY 'password';GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;
查看主库状态,记录File和Position值:
SHOW MASTER STATUS;3. 配置从库(Slave)
编辑从库的my.cnf,设置唯一server-id:
server-id = 2relay-log = mysql-relay-bin
read-only = 1
重启从库MySQL服务。登录后执行CHANGE MASTER命令,连接主库:
CHANGE MASTER TOMASTER_HOST='主库IP',
MASTER_USER='repl',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='mysql-bin.000001', # 来自SHOW MASTER STATUS
MASTER_LOG_POS= 156; # 来自SHOW MASTER STATUS
启动复制进程:
START SLAVE;4. 检查同步状态
在从库执行:
SHOW SLAVE STATUS\G重点检查以下两项:
- Slave_IO_Running: Yes
- Slave_SQL_Running: Yes
如果均为Yes,说明同步正常。若有错误,根据Last_Error信息排查网络、权限或数据不一致问题。
基本上就这些。离线环境只要MySQL二进制包正确,配置文件无误,主从同步可以稳定运行。注意防火墙开放3306端口,SELinux策略允许通信。










