文档章节

mysql 的AB角复制

胡子叭槎
 胡子叭槎
发布于 2016/11/10 23:32
字数 587
阅读 6
收藏 1

1    原理

    当主库有更新操作的时候,主库会把更新操作的sql,写如到二进制日志文件当中,并维护一个二进制日志文件的索引文件,以便日志文件轮询
    在从库启动异步复制的时候,从库会开启两个I/O线程
    其中一个用于连接主库
    另外一个用于传输sql

注意:
    必须打开二进制日志文件
    从库必须知道主库是从那一给位置偏移量开始的
    主库和从库的数据库名称可以不一样,推荐使用一样
    主库和从库的mysql版本必须一致

2·设置主从服务器

    主服务器 192.168.125.128

    从服务器    192.168.125.129

    2.1 设置主服务器

            vim /etc/my.cnf 中添加一下两条记录并重启
                 log-bin=mysql-bin
                 server_id=1

            查看日志名称和point:

            show master status;

mysql> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000004 |      181 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
 

        在mysql主服务器中建一个用户并授权:

       grant replication slave on *.* to repl@'%' identified by 'repl'

    2.2    设置mysql从服务器

            vim /etc/my.cnf 添加一下两条

                log-bin=mysql-bin
                server_id=2

            在mysql中运行help change master to

2.3    验证

        在从服务器设置好之后

            开启主从服务:start slave;

            查看当前设置状态:show slave status\G;

mysql> show slave status\G;
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.125.128
                  Master_User: repl
                  Master_Port: 3306
                Connect_Retry: 10
              Master_Log_File: mysql-bin.000004
          Read_Master_Log_Pos: 181
               Relay_Log_File: mysqld-relay-bin.000002
                Relay_Log_Pos: 251
        Relay_Master_Log_File: mysql-bin.000004
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB: 
          Replicate_Ignore_DB: 
           Replicate_Do_Table: 
       Replicate_Ignore_Table: 
      Replicate_Wild_Do_Table: 
  Replicate_Wild_Ignore_Table: 
                   Last_Errno: 0
                   Last_Error: 
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 181
              Relay_Log_Space: 407
              Until_Condition: None
               Until_Log_File: 
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File: 
           Master_SSL_CA_Path: 
              Master_SSL_Cert: 
            Master_SSL_Cipher: 
               Master_SSL_Key: 
        Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 0
                Last_IO_Error: 
               Last_SQL_Errno: 0
               Last_SQL_Error: 
1 row in set (0.00 sec)

ERROR: 
No query specified

上面两条Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

都成功就说明设置成功。

注意:如果显示Slave_IO_Running: No 请检查主从服务器各自的selinux 和iptable 是否都已经关闭

在主服务器上做一个操作,比如建库,建表,再在从服务器上检查是否已经复制到从服务器上

主服务器新建库:

mysql> create database base20161110;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| base1              |
| base20161110       |
| mysql              |
| test               |
+--------------------+
5 rows in set (0.00 sec)

从服务器已经自动复制了刚才主服务器新建的数据库:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| base20161110       |
| mysql              |
| test               |
+--------------------+
4 rows in set (0.01 sec)

主从服务器AB角 设置成功

© 著作权归作者所有

共有 人打赏支持
胡子叭槎
粉丝 22
博文 126
码字总数 133581
作品 0
成都
数据库管理员
私信 提问
探索MySQL高可用架构之MHA(4)

探索MySQL高可用架构之MHA(4) -----构建mysql高可用系列(共9篇) 上一篇文章介绍了本次架构中的Mysql源码安装。本篇文章主要介绍本次架构中的ABBB复制。 首先我们先介绍什么是MySql AB复制???...

顺境其生
2015/07/22
0
0
使用百度云加速防apache的ab测试ddos攻击

Apache带的有一个ab压力测试的; 具体的概念性的东西;咱不扯;有兴趣的自行搜索; 这里只简单介绍使用方法; windows示例:e:wamp64binapacheapache2.4.17binab.exe -n1000 -c100 http://ba...

白俊遥
2016/05/22
539
0
mysql (ab复制 mysql中间件)

原理图: mysql ab复制 A->B master: vim /etc/my.cnf 添加 log-bin=mysql-bin server_id=1 show master status grant replication slave on . to repl@'%' identified by 'repl' mysql-bin......

doudou___9958
2016/11/10
7
0
青云QingCloud RDS 服务率先支持 MySQL 5.7

作为一家优秀的基础云服务提供商,青云QingCloud 一直致力于为用户提供更好的服务,今天QingCloud RDS 服务率先支持 MySQL 5.7 版本(据小编了解应该是国内首家吧,如有误,请轻拍),本次升...

cathyli
2016/03/24
8
0
MySQL的小指南

《高性能MySQL》一书给我们做了许多指导,其中有5章应该精读的: Schema与数据类型优化 创建高性能的索引 查询性能优化 MySQL高级特性 复制 我对这几章都读过不下三遍了,有一些理解,当然更...

JoshuaShaw
2016/05/04
59
1

没有更多内容

加载失败,请刷新页面

加载更多

即学即用,轻松搞定这些选择器!(上)

所谓基本选择器是指选择器的名称前面没有其他选择器,即在组成上,基本选择器是单一名称。 基本选择器主要包括: 元素选择器 ID 选择器 类选择器 伪类选择器 伪元素选择器 通用选择器 元素选...

我的卡
14分钟前
2
0
c直接操作JAVA中的数组

** * jni对数组运算 * 在C中没有创建新的数组副本,直接在原来的java数组上面修改。然后返回了jintArray类型数据 */ JNIEXPORT jintArray JNICALL Java_com_org_vincent_javacallc_JNI_incr...

whoisliang
22分钟前
2
0
简单理解闭包问题

从我16年开始接触前端,知道闭包这个词,已经过去两年了。这两年里,闭包这个概念我在很多地方了解过,却实在没有真的理解,久而久之,变成了一块心病。这不,趁着现在项目告一段落的时间,我...

IrisHuang
23分钟前
3
0
网站漏洞怎么修复对于thinkphp的漏洞修复

THINKPHP漏洞修复,官方于近日,对现有的thinkphp5.0到5.1所有版本进行了升级,以及补丁更新,这次更新主要是进行了一些漏洞修复,最严重的就是之前存在的SQL注入漏洞,以及远程代码执行查询系...

网站安全
23分钟前
1
0
docker 安装oracle11g

1.准备docker环境; 2. docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g --pull 镜像(6个多G) 3.docker run -d -p 1521:1521 -v /data/oracle:/data/oracle --name ora......

xiaoxin
23分钟前
1
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部