ubuntu

Ubuntu Mariadb数据同步方法

小樊
53
2025-08-15 19:39:22
栏目: 云计算

Ubuntu下MariaDB数据同步主要有主从复制和主主复制两种方式,以下是具体方法:

主从复制

  1. 准备环境:确保主从服务器安装MariaDB且版本一致,主服务器开启二进制日志,从服务器可不开启。
  2. 配置主服务器
    • 编辑配置文件/etc/mysql/mariadb.conf.d/50-server.cnf,设置server-id=1,开启log-bin并指定日志文件名,如log-bin=/var/log/mysql/mysql-bin.log,还可通过binlog-do-db指定同步的数据库。
    • 重启MariaDB服务:sudo systemctl restart mariadb
    • 创建复制用户并授权:CREATE USER 'replicator'@'%' IDENTIFIED BY 'password'; GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'%'; FLUSH PRIVILEGES;
    • 查看主服务器状态,记录FilePosition值:SHOW MASTER STATUS;
  3. 配置从服务器
    • 编辑配置文件,设置server-id=2(需与主服务器不同),开启relay-log,可通过read-only=1设置为只读模式。
    • 重启MariaDB服务。
    • 执行同步命令:CHANGE MASTER TO MASTER_HOST='主服务器IP', MASTER_USER='replicator', MASTER_PASSWORD='password', MASTER_LOG_FILE='记录的File值', MASTER_LOG_POS=记录的Position值;
    • 启动复制:START SLAVE;
  4. 验证同步:在主服务器插入数据,检查从服务器是否同步。

主主复制

  1. 配置节点:两台服务器均按主服务器配置步骤设置server-id(需唯一)、开启二进制日志,其中一台设置auto_increment_offsetauto_increment_increment以避免主键冲突。
  2. 创建复制用户:在两台服务器上分别创建用于复制的用户并授权。
  3. 配置同步关系:在一台服务器上执行CHANGE MASTER TO命令,指定另一台服务器的相关信息(IP、用户、密码、日志文件及位置),反之亦然。
  4. 启动复制并验证:分别启动两台服务器的复制进程,通过插入数据验证双向同步是否正常。

注意事项

0
看了该问题的人还看了