• CentOS7 设置 MySQL 主备同步



    本文主要介绍在 MySQL 的主备同步设置方法。

    环境准备

    修改配置文件

    • 主节点

    备份配置文件,并添加要同步的数据库

    cd /etc/
    cp my.cnf my.cnf.bak
    
    • 1
    • 2

    my.cnf 中添加如下内容

    # sync
    server-id=1	# 服务器 ID,要唯一
    log-bin=master-bin
    log_bin_index =master-bin.index
    binlog_do_db=mindoc_db # mindoc_db 是要同步的数据库的名称,后面验证数据同步时,就是同步该库的数据
    user=mysql
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 备节点

    同样备份配置文件,

    cd /etc/
    cp my.cnf my.cnf.bak
    
    • 1
    • 2

    my.cnf 中添加如下内容

    # sync
    server-id=2 # 服务ID
    log-bin=salve-bin
    relay-log =slave-relay-bin
    relay-log-index=slave-relay-bin.index
    
    • 1
    • 2
    • 3
    • 4
    • 5

    创建同步数据账户

    • 主节点

    创建用于数据同步的用户

    # 登录 MySQL
    mysql -uroot -p
    mysql> create user 'sync'@'10.180.210.19' identified by 'Sync-123456'; # 创建用户 sync,设置密码 Sync-123456,并允许备库 10.180.210.19 登录
    mysql> flush privileges; # 刷新权限
    mysql> grant replication slave on *.* to 'sync'@'10.180.210.19' identified by 'Sync-123456' with grant option; # 赋予用户 sync 进行 replication slave 到备库 10.180.210.19 的权限
    
    # 查询 master 状态
    mysql> show master status;
    +-------------------+----------+--------------+------------------+-------------------+
    | File              | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
    +-------------------+----------+--------------+------------------+-------------------+
    | master-bin.000001 |   121040 | mindoc_db    | mysql            |                   |
    +-------------------+----------+--------------+------------------+-------------------+
    1 row in set (0.00 sec)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    设置主库信息

    • 备节点

    在备节点上设置主库信息

    mysql -uroot -p
    
    mysql> change master to master_host='10.180.249.18', master_port=3306, master_user='sync', master_password='Sync-123456', master_log_file='master-bin.000001', master_log_pos=121040;
    
    mysql> start slave;
    mysql> flush privileges;
    
    # 查询 slave 状态
    mysql> show slave status\G;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    image-20210616170441065

    测试

    在主节点的数据库中添加数据,观察备节点是否能同步,如果能同步,则主备同步设置成功。

    参考资料

    • centos7 mysql主备模式(读写分离) - 丶鹏 - 博客园:https://www.cnblogs.com/high520/p/13546338.html

    注:本文首发于个人博客网站: http://www.erik-ly.com/

  • 相关阅读:
    逻辑回归(Logistic Regression)
    程序环境和预处理
    大都会人寿线下培训第五天回顾
    MyBatis执行SQL语句的两种方式
    29岁才转行软件测试,目前32了,我的一些经历跟感受
    通过20天预测7天
    Gorm框架学习---CRUD接口之创建
    YOLOv8-Seg推理详解及部署实现
    Typescript笔记:Number对象
    推荐算法中CTR和CVR的ESMM模型pytorch实现
  • 原文地址:https://blog.csdn.net/u012318074/article/details/124231506