步骤一:配置主服务器
1.修改MySQL配置文件
登录主服务器的宝塔面板,进入 软件商店 -> 找到你的MySQL实例 -> 点击 设置 -> 配置修改。
在 [mysqld] 段落中,找到并修改以下参数:
[mysqld] server-id = 1 # 给主服务器一个唯一ID,通常设为1 log-bin = mysql-bin # 开启二进制日志,这是复制的基础 binlog-do-db = xxx # 指定要同步的数据库(多个数据库可重复多行) #binlog-ignore-db = mysql # 可选,忽略不同步的系统库
保存修改后,重启MySQL服务使配置生效。
2.创建主从同步专用用户
仍在主服务器上,通过宝塔面板的 数据库 菜单,点击 root密码 查看或设置好root密码。然后通过SSH终端或宝塔的 软件商店 -> MySQL -> 管理 -> 命令行 登录MySQL:
mysql -u root -p # 输入MySQL的root密码
在MySQL命令行中,执行以下命令创建一个专门用于复制权限的用户(请使用强密码替换 'your_strong_password'):
CREATE USER 'repl_user'@'120.24.251.xxx' IDENTIFIED BY 'your_strong_password'; GRANT REPLICATION SLAVE ON *.* TO 'repl_user'@'120.24.251.xxx'; FLUSH PRIVILEGES;
3.查看主服务器状态并记录关键信息
1.继续在MySQL命令行中执行:
SHOW MASTER STATUS;
记录下返回结果中的 File (例如 mysql-bin.000001) 和 Position (例如 617) 的值。从服务器配置时需要用到这两个值。记下后可以退出MySQL命令行 (exit)。
步骤二:配置从服务器
1.新建数据库并导入数据(如果需要)
登录从服务器的宝塔面板,进入 数据库,点击 添加数据库。
数据库名:xxx
用户名:xxx(或其他你希望使用的用户名,不一定必须和主库用户名相同)
密码:设置一个强密码
访问权限:选择本地服务器或根据后续程序连接需要设置
点击 创建。
如果主库xxx已有数据,请现在从库的phpMyAdmin中导入你之前从主库导出的数据备份。
2.修改MySQL配置文件
在从服务器宝塔面板上,如同配置主服务器一样,找到MySQL的配置文件进行修改:
[mysqld] server-id = 2 # 从服务器ID,必须与主服务器不同 relay-log = relay-log-bin # 开启中继日志 read_only = 1 # 设置从库为只读(可选,增强安全性) replicate-do-db = xxx # 指定要复制的数据库
保存修改后,重启MySQL服务使配置生效。
3.配置并启动从库复制链路
通过SSH或宝塔终端登录从服务器的MySQL命令行 (mysql -u root -p)。然后执行以下命令,将括号内容替换为你在主服务器上获取的信息和创建的用户密码:
CHANGE MASTER TO MASTER_HOST='119.23.55.xxx', -- 主服务器IP MASTER_USER='repl_user', -- 主库创建的复制账号 MASTER_PASSWORD='your_strong_password', -- 复制账号的密码 MASTER_PORT=3306, -- MySQL端口,默认3306 MASTER_LOG_FILE='mysql-bin.000001', -- 主库SHOW MASTER STATUS显示的File MASTER_LOG_POS=617; -- 主库SHOW MASTER STATUS显示的Position
完成后,启动从库复制进程:
START SLAVE;
步骤三:检查同步状态
在从服务器的MySQL命令行中,执行以下命令查看从库状态:
SHOW SLAVE STATUS \G
关键查看这两行:
Slave_IO_Running: Yes Slave_SQL_Running: Yes
如果这两个参数的值都是 Yes,恭喜你,主从同步已经成功建立。