• Linux MySQL(MariaDB)主从复制不停机增加新从库


    给主库加读锁

    务必严格按照下面的先后顺序!!!
    必须先加锁,再把主库数据备份到新从库(如:用navicat备份数据到新从库)

    #登录mysql(mariadb)
    mysql -u root -p
    #加锁
    flush tables with read lock;
    #必须先加锁,再把主库数据备份到新从库(如:用navicat备份数据到新从库)
    #查询主库状态
    show master status;
    

    新从库绑定主库

    #登录mysql(mariadb)
    mysql -u root -p
    #绑定主库
    CHANGE MASTER TO MASTER_HOST='192.168.1.11',MASTER_USER='copy',MASTER_PASSWORD='copy',MASTER_LOG_FILE='mariadb-bin.000001',MASTER_LOG_POS=330;
    #新从库进行主从复制
    start slave;
    

    回到主库进行解锁

    unlock tables;
    

    回到从库查看是否主从复制

    SHOW SLAVE STATUS\G;
    

    从库这2个都为Yes才代表成功,有一个是No都不成功!!!
    lave_IO_Running: Yes
    Slave_SQL_Running: Yes


    错误解决

    错误1:Slave failed to initialize relay log info structure from the repository

    #停止新从库主从复制
    STOP SLAVE;
    #重置新从库主从复制数据
    reset slave all;
    

    注意事项:

    1. 没有解锁主库,则再回到新从库绑定主库操作一遍。
    2. 解锁了主库,要给主库重新加锁(因为解锁会把新数据写入主库,导致新从库数据不一致,进而导致新从库主从复制失败!),然后重新备份数据到新从库,再重新操作一遍。
  • 相关阅读:
    Sqoop 学习
    【内网渗透】记一次靶机实战
    DQN论文阅读
    【.NET】简单使用Description特性
    笔记:Python 循环结构练习题
    单元测试 —— JUnit 5 参数化测试
    自用工具类整理
    Scala系列-3、scala中的类和对象有哪些?
    javaweb企业项目管理系统
    基于SpringBoot的实习管理系统
  • 原文地址:https://blog.csdn.net/weixin_43933728/article/details/127090958