zoukankan      html  css  js  c++  java
  • mysql 主从同步配置

    使用centos 配置完成mariadb后 验证登录:

    创建用户:

    GRANT ALL PRIVILEGES ON *.* TO xxx@"%" IDENTIFIED BY 'xxx.sr' WITH GRANT OPTION;
    GRANT ALL PRIVILEGES ON *.* TO xxx@"localhost" IDENTIFIED BY 'xxx.sr' WITH GRANT OPTION;

    配置主服务器

    编辑主master服务器配置文件/etc/my.cnf

    [mysqld]节点下加入两句话:

    server-id=1         # 表示服务器的ID,此为唯一机器标识。
    log-bin=mysql-bin        # 启用二进制日志;表示开启bin-log日志功能,这样I/O才会将日志复制到从机的rely-log中。
    binlog-do-db=test     # 标识对指定数据库做日志记录,如果对多个数据库做日志记录,需加','分隔。
    binlog-ignore-db=mysql  # 标识不对指定数据库做日志记录

    然后重启服务:systemctl restart mariadb

    登录mysqlmysql –uroot -proot

    mysql>show master status;    #查看MASTER状态(这两个值FilePosition)其中的file就是二进制文件,position记录当前操作sql的步骤数(注意一条sql包含多步,所以不是sql语句的条数)

    一般情况下,第一次显示position的数量是120

    配置从服务器:

    修改/etc/my.cnf增加一行

    log-bin=mysql-bin
    server-id=2
    replicate-do-db = 同步的数据库
    replicate-ignore-db = 非同步的数据库

    然后重启服务器

    systemctl restart mariadb

    通过mysql命令配置同步日志的指向:

     

    mysql>change master to master_host=192.168.41.41’,master_port=3306,master_user='root',master_password='root',master_log_file='mysql-bin.000001',master_log_pos=120;

    master_host        主服务器的IP地址(内网地址)

    master_port        主服务器的PORT端口

    master_log_file    和主服务器show master status中的File字段值相同

    master_log_pos        和主服务器show master status中的Position字段值相同

    mysql>start slave;                #stop slave;停止服务,出错时先停止,再重新配置
    mysql>show slave statusG;        #查看SLAVE状态,G结果纵向显示。必须大写,这个命令无法再sqlyog中使用

    如果出现问题:error connecting to master 'root@192.168.41.41:3306' - retry-time: 60 retries: 86400 message: Access denied for user 'root'@'192.168.41.42' (using password: YES)

    建议:

    mysql>stop slave;
    ###更改使用之前创建用户
    mysql>change master to master_host=192.168.41.41’,master_port=3306,master_user='xxx',master_password='xxx.sr',master_log_file='mysql-bin.000001',master_log_pos=120;

    slave_io_running:表示同步日志的io进程

    slave_sql_running:表示执行同步sql命令的进程

    这个2个必须为yes,否则表示配置失败(如果配置失败请检查3306端口是否有对外开放)

    systemctl restart mariadb //重启服务器

    测试: 主服务器创建数据表添加数据 看从数据库是否同步

    主库创建 删除数据库,查看观察日志

    user@localhost [(none)]> show binlog events in 'mysql-bin.000045';
    +------------------+-----+-------------+-----------+-------------+----------------------------------------------+
    | Log_name         | Pos | Event_type  | Server_id | End_log_pos | Info                                         |
    +------------------+-----+-------------+-----------+-------------+----------------------------------------------+
    | mysql-bin.000045 |   4 | Format_desc |         1 |         245 | Server ver: 5.5.65-MariaDB, Binlog ver: 4    |
    | mysql-bin.000045 | 245 | Query       |         1 |         356 | create database `zhu_demo`character set utf8 |
    | mysql-bin.000045 | 356 | Query       |         1 |         447 | drop database `zhu_demo`                     |
    | mysql-bin.000045 | 447 | Query       |         1 |         558 | create database `zhu_cong`character set utf8 |
    | mysql-bin.000045 | 558 | Query       |         1 |         645 | create database darren                       |
    | mysql-bin.000045 | 645 | Query       |         1 |         732 | drop database `darren`                       |
    +------------------+-----+-------------+-----------+-------------+----------------------------------------------+
    6 rows in set (0.00 sec)
  • 相关阅读:
    Algorithm Gossip (48) 上三角、下三角、对称矩阵
    .Algorithm Gossip (47) 多维矩阵转一维矩阵
    Algorithm Gossip (46) 稀疏矩阵存储
    Algorithm Gossip (45) 费氏搜寻法
    Algorithm Gossip (44) 插补搜寻法
    Algorithm Gossip (43) 二分搜寻法
    Algorithm Gossip (42) 循序搜寻法(使用卫兵)
    Algorithm Gossip (41) 基数排序法
    Algorithm Gossip (40) 合并排序法
    AlgorithmGossip (39) 快速排序法 ( 三 )
  • 原文地址:https://www.cnblogs.com/l-zl/p/9712116.html
Copyright © 2011-2022 走看看