搭建MariaDB主从复制环境需要完成以下几个步骤。前提是你已经在两台服务器上部署好MariaDB,并且它们之间可以互相通信。
修改主服务器的配置文件(通常为 /etc/my.cnf 或者 /etc/mysql/my.cnf):
[mysqld] server-id = 1 log_bin = /var/log/mysql/mysql-bin.log binlog_do_db = mydb # 使用你要同步的数据库名替换该字段
重启MariaDB服务以应用更改:
sudo systemctl restart mariadb
进入MariaDB并创建用于复制的账号:
CREATE USER 'replicator'@'%' IDENTIFIED BY 'password'; # 密码请按需修改 GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'%'; FLUSH PRIVILEGES;
锁定表并查看当前二进制日志状态:
FLUSH TABLES WITH READ LOCK; SHOW MASTER STATUS;
记录 File 和 Position 的信息,后续操作会用到。
释放表锁:
UNLOCK TABLES;
编辑从服务器的配置文件(一般位于 /etc/my.cnf 或 /etc/mysql/my.cnf):
[mysqld] server-id = 2 relay_log = /var/log/mysql/mysql-relay-bin.log log_bin = /var/log/mysql/mysql-bin.log binlog_do_db = mydb # 数据库名称请根据实际情况调整 read_only = 1
重启MariaDB服务使新配置生效:
sudo systemctl restart mariadb
登录MariaDB并设置主服务器连接信息:
CHANGE MASTER TO MASTER_HOST='master_ip', # 替换为主服务器IP地址 MASTER_USER='replicator', MASTER_PASSWORD='password', # 与之前设置的密码一致 MASTER_LOG_FILE='mysql-bin.000001', # 替换为你记录的File值 MASTER_LOG_POS=123; # 替换为你记录的Position值
启动从服务器复制功能:
START SLAVE;
查询从服务器运行状态:
SHOW SLAVE STATUS\G
确保 Slave_IO_Running 和 Slave_SQL_Running 都显示 Yes,否则请排查错误原因。
在主服务器执行插入操作,并在从服务器检查是否已同步:
-- 在主服务器上 USE mydb; INSERT INTO mytable (column1, column2) VALUES ('value1', 'value2'); <p>-- 在从服务器上 USE mydb; SELECT * FROM mytable;
如果从服务器能查到新增的数据,则表示复制配置成功。
通过上述步骤,你应该已经完成了MariaDB主从复制的配置工作。
以上就是如何配置Linux MariaDB主从复制的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号