zoukankan      html  css  js  c++  java
  • mysql主从复制

    https://www.cnblogs.com/rwxwsblog/p/4542417.html

    http://www.cnblogs.com/gl-developer/p/6170423.html

    Mysql主从复制的实现原理图大致如下(来源网络):

    实现MySQL主从复制需要进行的配置:

    • 主服务器:
      • 开启二进制日志
      • 配置唯一的server-id
      • 获得master二进制日志文件名及位置
      • 创建一个用于slave和master通信的用户账号
    • 从服务器:
      • 配置唯一的server-id
      • 使用master分配的用户账号读取master二进制日志
      • 启用slave服务

    主数据库:182.92.172.80 /linux

    从数据库:123.57.44.85 /linux

    一、主库修改

    找到主数据库的配置文件my.cnf(或者my.ini),我的在/etc/my.cnf,在[mysqld]部分插入如下两行:

    [mysqld]
    log-bin=mysql-bin #开启二进制日志
    server-id=1 #设置server-id
    # 不同步哪些数据库  
    binlog-ignore-db = mysql  
    binlog-ignore-db = test  
      
    # 只同步哪些数据库,除此之外,其他不同步  
    binlog-do-db = claim_oauth
    binlog-do-db = claim_tpa

    重启mysql

    systemctl restart mysqld;

    关闭mysql

    systemctl stop mysqld.service

    创建用于同步的用户和密码

    mysql> CREATE USER 'insure'@'172.16.120.189' IDENTIFIED BY 'Password321!';#创建用户
    mysql> GRANT REPLICATION SLAVE ON *.* TO 'insure'@'172.16.120.189';#分配权限
    mysql>flush privileges;   #刷新权限

    查看master状态

    mysql > SHOW MASTER STATUS;
    +------------------+----------+--------------+------------------+
    | File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
    +------------------+----------+--------------+------------------+
    | mysql-bin.000003 | 73       | test         | manual,mysql     |
    +------------------+----------+--------------+------------------+

    二、修改从库

    修改my.cnf配置文件  cd /etc/my.cnf

    [mysqld]
    server-id=2 #设置server-id,必须唯一

    启动slave同步依次执行以下三步
    stop slave;

    CHANGE MASTER TO
    MASTER_HOST='172.16.120.190',
    MASTER_USER='insure',
    MASTER_PASSWORD='Password321!',
    MASTER_LOG_FILE='mysql-bin.000003',
    MASTER_LOG_POS=929;

    start slave;

    查看slave状态
    show slave statusG;

    1. 对于机器重启情况, 可手动执行stop slave.  在正常关闭mysql, 重启后,手动start slave, 应该就可以正常同步。

    2. 线上系统,重启一定要小心, 重启后监控相关模块是否启动,可以增加mysql slave工作监控。

    
    


    
    
    
    
  • 相关阅读:
    Ajax调用asp.net后台代码
    浅谈Swift集合类型
    强大的swift字符串
    swift的运算符
    Swift的基本类型和流程控制
    Router和History (路由控制)-backbone
    jq里attr和prop的区别
    文本超出盒子的内容用省略号代替
    利用html5中的localStorage获取网页被访问的次数
    html5的本地存储localStorage和sessionStorage
  • 原文地址:https://www.cnblogs.com/mutong1228/p/10137902.html
Copyright © 2011-2022 走看看