zoukankan      html  css  js  c++  java
  • Mysql 主从主主复制总结(详细)

    环境:Centos 6.9,Mysql 8.0


    配置准备:1、为Centos配置好网络,使用远程工具连接。

                   2、安装mysql,途径不限。mysql8.0和5.7区别不大,8.0在配置主从的时候默认开启了binlog,5.7手动起一下就好,下文有启动方法。(我使用rpm包安装,安装后要先启动msyql服务,命令service mysqld start)

                   3、mysql安装后的默认密码在 /etc/my.cnf 中 log-error配置项所指向的log地址中 /var/log/mysqld.log  

                        

    主从复制

    好处:多节点性能变优,安全性更高,提高服务器负载。

    应用场景:数据库备份、读写分离


    步骤: 首先。确定一个主节点master,其他为从节点slave。

       1、配置主节点。创建用户授予权限;如果binlog没开启,打开binlog日志;

          2、配置从节点。配置同步日志;确定主节点的ip,端口,用户;启动从节点;

        

    主节点(Master):

      修改mysql配置文件,vim /etc/my.cnf 配置server-id的值,与从节点不能重复。

            创建创建一个用户。 create user 'repl'@'192.168.110.%' identified by 'Repl_123456';

                      在主服务器赋予它 replication slave 权限。grant replication slave on *.* to 'repl'@'192.168.110.%';

             mysql 日志类型:

          Error log 错误日志

          General query log普通查询日志

          Slow query log 慢查询日志(记录哪些查询比较慢 )

          Binary log二进制日志文件(1、用于增量备份。2、主从)

              查看是否已开启binlog:show variables like '%log_bin%';

                如果没开启,配置 :vim /etc/my.cnf加上  server-id=1(多台节点值不能重复)和 log_bin=/var/lib/mysql/mysql-bin 保存退出 重启mysql服务。

                查看binlog日志:在mysql中 show binlog events  in '文件名';  在系统中 mysqlbinlog  文件名; 

                每次重新启动mysql都会新建一个binlog。查看当前是哪个binlog文件:show master status;

           show msater logs;(查看所有日志文件),reset master(清空所有日志文件)

      binlog日志恢复数据

           mysqlbinlog 文件名 | mysql -u root -p

    从节点(Slave):

        修改mysql配置文件,vim /etc/my.cnf 

        配置server_id(不能与主节点重复,且必须为数字)

               配置同步日志路径relay-log=/var/lib/mysql/relay-bin

      进入mysql执行

    mysql> CHANGE MASTER TO
     -> MASTER_HOST='192.168.110.66',
     -> MASTER_USER='repl',
     -> MASTER_PASSWORD='Repl_123456',
     -> MASTER_LOG_FILE='binlog.000007',
     -> MASTER_LOG_POS=0;
    Query OK, 0 rows affected, 2 warnings (0.01 sec)
     
    mysql> START SLAVE;
    Query OK, 0 rows affected (0.00 sec)
    

      show slave statusG;检查是否已链接上主节点,根据里面的错误信息修改配置。确保master防火墙关闭,/var/lib/mysql/auto.cnf里的uuid不重复。

           如果出现Slave_Io_Running:yes但Slave_SQL_Running:No的情况执行

           mysql> stop slave;

      mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

      mysql> start slave;

               

    配置成功!

     主主复制其实的意思就是节点直接互为主从复制。

     在配置好主从之后再去配置从节点,反向配置一遍主从。

  • 相关阅读:
    14_java之变量|参数|返回值|修饰符
    NYOJ 202 红黑树 (二叉树)
    NYOJ 138 找球号(二) (哈希)
    NYOJ 136 等式 (哈希)
    NYOJ 133 子序列 (离散化)
    NYOJ 129 树的判定 (并查集)
    NYOJ 117 求逆序数 (树状数组)
    NYOJ 93 汉诺塔 (数学)
    HDU 2050 折线分割平面 (数学)
    天梯赛L2-008 最长对称子串 (字符串处理)
  • 原文地址:https://www.cnblogs.com/zzuuoo666/p/8906314.html
Copyright © 2011-2022 走看看