欢迎光临
专业Linux运维二十年

Linux MariaDB如何配置主从复制

在Linux系统中设置MariaDB的主从复制需要完成一系列操作流程。下面将分步骤介绍如何搭建主服务器与从服务器之间的数据。

主服务器设置

  1. 修改主服务器的配置文件(通常位于/etc/my.cnf或/etc//my.cnf):

    <code> [mysqld]
     server-id = 1
     log_bin = /var/log/mysql/mysql-bin.log
     binlog_do_db = mydb  # 填入你需要同步的数据库名称</code>

    登录后复制

  2. 重启MariaDB服务,使配置生效:

    <code> sudo systemctl restart mariadb</code>

    登录后复制

  3. 进入MariaDB控制台并创建一个专用的复制账户

    <code> CREATE USER 'replicator'@'%' IDENTIFIED BY 'password';  # 设置安全密码
     GRANT REPLICATION SLAVE ON *.* TO 'replicator'@'%';
     FLUSH PRIVILEGES;</code>

    登录后复制

  4. 锁定数据库表并查看当前二进制日志信息

    <code> FLUSH TABLES WITH READ LOCK;
     SHOW MASTER STATUS;</code>

    登录后复制

    注意记录输出中的File和Position字段值。

  5. 释放表锁

    <code> UNLOCK TABLES;</code>

    登录后复制

从服务器设置

  1. 编辑从服务器的配置文件(路径同上):

    全能AI配音神器

    89

    <code> [mysqld]
     server-id = 2
     relay_log = /var/log/mysql/mysql-relay-bin.log
     log_bin = /var/log/mysql/mysql-bin.log
     read_only = 1</code>

    登录后复制

  2. 重启MariaDB服务以启用新的配置参数:

    <code> sudo systemctl restart mariadb</code>

    登录后复制

  3. 连接到MariaDB,并执行以下命令来设置复制参数

    <code> 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值</code>

    登录后复制

  4. 启动从服务器的复制线程

    <code> START SLAVE;</code>

    登录后复制

  5. 查询复制状态是否正常运行

    <code> SHOW SLAVE STATUS\G</code>

    登录后复制

    确认Slave_IO_Running和Slave_SQL_Running的状态均为Yes。如果出现异常,请根据提示排查问题。

相关建议

  • 保持主从服务器之间的时间一致性。
  • 每个服务器的server-id必须唯一,不能重复。
  • 若部署多个从节点,应确保每个节点拥有独立的server-id。
  • 推荐在正式环境中采用GTID等更高级别的复制策略以增强可靠性。

按照上述流程操作后,你应该可以顺利完成MariaDB的主从架构搭建。如遇故障,请参考相关日志进行调试分析。

脚本之家
赞(0) 打赏
未经允许不得转载:Linux老运维 » Linux MariaDB如何配置主从复制

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫