-- MySQL 主从复制配置示例
-- 1. 在主服务器上配置
-- 编辑 my.cnf 文件,添加或修改以下内容:
[mysqld]
server-id=1
log-bin=mysql-bin
-- 重启 MySQL 服务使配置生效
sudo systemctl restart mysql
-- 创建用于复制的用户
CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
-- 锁定主数据库以获取二进制日志位置
FLUSH TABLES WITH READ LOCK;
-- 获取二进制日志文件名和位置
SHOW MASTER STATUS;
-- 解锁表
UNLOCK TABLES;
-- 2. 在从服务器上配置
-- 编辑 my.cnf 文件,添加或修改以下内容:
[mysqld]
server-id=2
-- 重启 MySQL 服务使配置生效
sudo systemctl restart mysql
-- 配置从服务器连接到主服务器
CHANGE MASTER TO
MASTER_HOST='master_ip',
MASTER_USER='repl',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=154;
-- 启动从服务器复制进程
START SLAVE;
-- 检查从服务器状态
SHOW SLAVE STATUS\G;
主服务器配置:
server-id:设置唯一的服务器 ID。log-bin:启用二进制日志记录,这是主从复制的基础。FLUSH TABLES WITH READ LOCK 锁定表,确保数据一致。SHOW MASTER STATUS 获取二进制日志文件名和位置。从服务器配置:
server-id:设置唯一的服务器 ID。CHANGE MASTER TO 命令配置从服务器连接到主服务器,指定主服务器的 IP、用户名、密码、二进制日志文件名和位置。START SLAVE 启动从服务器的复制进程。SHOW SLAVE STATUS 检查从服务器的状态,确保复制正常工作。上一篇:mysql 布尔类型
下一篇:mysql date类型
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站