1.首先安装MySQL ab:

192.168.6.163 master

192.168.6.167 slave

master: vi /etc/opt/rh/rh-mysql57/my.cnf.d/rh-mysql57-mysql-server.cnf

log-bin=mysql-bin

server-id=101

 grant replication slave on *.* to replica@'%' identified by 'password'; 

flush privileges;

exit

slave:vi /etc/opt/rh/rh-mysql57/my.cnf.d/rh-mysql57-mysql-server.cnf

log-bin=mysql-bin
server-id=102
read_only=1
report-host=node01.srv.world

systemctl restart rh-mysql57-mysqld

master:

flush tables with read lock;

show master status;

mysqldump -u root -p --all-databases --lock-all-tables --events > mysql_dump.sql

unlock tables;

scp mysql_dump.sql node01.srv.world:/tmp/

slave:

mysql -u root -p < /tmp/mysql_dump.sql

change master to
master_host='192.168.6.163',
master_user='replica',
master_log_file='mysql-bin.000001',\040
master_log_pos=732;

start slave;

 show slave status\G

安装成功;

2.安装mycat

首先配置jdk:

jdk-8u73-linux-x64.rpm 这个直接yum -y install

解压:Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz

groupadd dba
useradd -g dba mycat
passwd mycat
mkdri /home/mycat/app
mv mycat /home/mycat/app/mycat

vim /home/mycat/.bash_profile

export MYCAT_HOME=/home/mycat/app/mycat
PATH=$PATH:$MYCAT_HOME/bin
source .bash_profile

vim /etc/my.cnf
lower_case_table_names = 1
我的server.xml,schema.xml

[root@java1 ~]# cat $MYCAT_HOME/conf/server.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- - - Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License. - You
may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0
- - Unless required by applicable law or agreed to in writing, software -
distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the
License for the specific language governing permissions and - limitations
under the License. -->
<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://io.mycat/">
<system>
<property name="useSqlStat">0</property> <!-- 1为开启实时统计、0为关闭 -->
<property name="useGlobleTableCheck">0</property> <!-- 1为开启全加班一致性检测、0为关闭 -->

<property name="sequnceHandlerType">2</property>
<!-- <property name="useCompression">1</property>--> <!--1为开启mysql压缩协议-->
<!-- <property name="fakeMySQLVersion">5.6.20</property>--> <!--设置模拟的MySQL版本号-->
<!-- <property name="processorBufferChunk">40960</property> -->
<!--
<property name="processors">1</property>
<property name="processorExecutor">32</property>
-->
<!--默认为type 0: DirectByteBufferPool | type 1 ByteBufferArena-->
<property name="processorBufferPoolType">0</property>
<!--默认是65535 64K 用于sql解析时最大文本长度 -->
<!--<property name="maxStringLiteralLength">65535</property>-->
<!--<property name="sequnceHandlerType">0</property>-->
<!--<property name="backSocketNoDelay">1</property>-->
<!--<property name="frontSocketNoDelay">1</property>-->
<!--<property name="processorExecutor">16</property>-->
<!--
<property name="serverPort">8066</property> <property name="managerPort">9066</property>
<property name="idleTimeout">300000</property> <property name="bindIp">0.0.0.0</property>
<property name="frontWriteQueueSize">4096</property> <property name="processors">32</property> -->
<!--分布式事务开关,0为不过滤分布式事务,1为过滤分布式事务(如果分布式事务内只涉及全局表,则不过滤),2为不过滤分布式事务,但是记录分布式事务日志-->
<property name="handleDistributedTransactions">0</property>

<!--
off heap for merge/order/group/limit 1开启 0关闭
-->
<property name="useOffHeapForMerge">1</property>

<!--
单位为m
-->
<property name="memoryPageSize">1m</property>

<!--
单位为k
-->
<property name="spillsFileBufferSize">1k</property>

<property name="useStreamOutput">0</property>

<!--
单位为m
-->
<property name="systemReserveMemorySize">384m</property>

<!--是否采用zookeeper协调切换 -->
<property name="useZKSwitch">true</property>

</system>

<!-- 全局SQL防火墙设置 -->
<!--
<firewall>
<whitehost>
<host host="127.0.0.1" user="mycat"/>
<host host="127.0.0.2" user="mycat"/>
</whitehost>
<blacklist check="false">
</blacklist>
</firewall>
-->

<user name="root">
<property name="password">*****</property>
<property name="schemas">information_schema,infosys,mysql,performance_schema,sys</property>

<!-- 表级 DML 权限设置 -->
<!--
<privileges check="false">
<schema name="TESTDB" dml="0110" >
<table name="tb01" dml="0000"></table>
<table name="tb02" dml="1111"></table>
</schema>
</privileges>
-->
</user>
</mycat:server>

[root@java1 logs]# cat ../conf/schema.xml
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">

<schema name="information_schema" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
</schema>
<schema name="infosys" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn2">
</schema>
<schema name="mysql" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn3">
</schema>
<schema name="performance_schema" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn4">
</schema>
<schema name="sys" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn5">
</schema>
<dataNode name="dn1" dataHost="192.168.6.163" database="infosys" />
<dataNode name="dn2" dataHost="192.168.6.163" database="information_schema" />
<dataNode name="dn3" dataHost="192.168.6.163" database="mysql" />
<dataNode name="dn4" dataHost="192.168.6.163" database="performance_schema" />
<dataNode name="dn5" dataHost="192.168.6.163" database="sys" />
<dataHost name="192.168.6.163" maxCon="1000" minCon="10" balance="2"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<!-- can have multi write hosts -->
<writeHost host="192.168.6.163" url="192.168.6.167:3306" user="root"
password="******">
<!-- can have multi read hosts -->
<!-- <readHost host="hostS2" url="192.168.6.163:3306" user="root" password="*****" /> -->
<readHost host="192.168.6.167" url="192.168.6.167:3306" user="root" password="******">
</readHost>
</writeHost>
</dataHost>
</mycat:schema>

启动起来:mycat start
登录:
[root@java1 ~]# mysql -h192.168.6.168 -uroot -p**** -P 9066
好了,现在再研究它怎么使用和要出现的问题怎么处理。
后期 学习下面的,路漫漫啊:
1, mycat (主从) + mysql (一主多从) 读写分离。
2, mycat(主从)+ mysql (多主N从) 分库分表。
3, haproxy + mycat + mysql
4, haproxy +keepalive+mycat + mysql galera cluster + mysql
5, mycat + oracle (dg) 读写分离。
6, mycat+web 监控


mycat 管理MySQL5.7主从搭建的更多相关文章

  1. linux-linux mysql5.7主从搭建

    原理: 1:master,建立二进制日志 , 每产生语句或者磁盘变换,写进日志: 2:slave,建立relaylog日志(中继日志),分析master的binlog. 3:master,建立授权账号 ...

  2. CENTOS6.5 安装 mysql5.6 以及搭建双主

    一.Mysql5.6.10安装 1.1.必要软件 yum -y install gcc gcc-c++ autoconf automake bison ncurses-devel libtool-lt ...

  3. myCat读写分离+传统主从

    1 Mycat介绍: mycat是最近很火的一款国人发明的分布式数据库中间件,它是基于阿里的cobar的基础上进行开发的 准备环境: db01主   10.0.0.51 db02备   10.0.0. ...

  4. xtrabackup 在线主从搭建

    因为意外导致某个MySQL的从服务器宕机,且不可修复,因为是业务数据库,不能停机和锁表进行从库的搭建,所以考虑了使用xtrabackup 进行在线主从搭建. 一.数据库环境 注意:  主从搭建主库一定 ...

  5. Mycat读写分离、主从切换学习(转)

    http://blog.csdn.net/zhanglei_16/article/details/50707487 Mycat读写分离.主从切换学习问题一:分表.分库的优缺点,以及分表无法成为主流分表 ...

  6. mysql5.6主从参数详解

    mysql5.6的主从相当的不错,增加了不少参数,提升了主从同步的安全和效率,以下是mysql5.6主从参数详解. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...

  7. mysql 主从搭建步骤

    mysql 主从搭建步骤 1:主库开启master端bin-log 2:主库创建备份用户 3:主库全备 4:从库导入全备数据 5:从库修改change master to信息 6:从库slave st ...

  8. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(1)-框架搭建

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(1)-框架搭建 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) 前言:这篇博客开始我们便一步一步的来实现这 ...

  9. 基于MAC10.12+MYSQL5.7.17搭建XMPP服务器【黑苹果系统】

    在以前的公司中了解到XMPP可以搭建即时通讯APP.出于好奇自己在空余时间也学了一下搭建XMPP服务器,其中遇到了许多问题,经过坎坷的路程终于搭建成功[这些坎坷的经历主要是由于自己的无知造成的] 下面 ...

随机推荐

  1. MongoDB从环境搭建到代码编程(Window 环境)

    本人开发环境: window Server 2008 , 64位系统 服务端 MongoDB下载地址:http://www.mongodb.org/downloads  (本人己下好的在百度网盘 : ...

  2. @Transactional spring 事务失效(转载)

    原文地址:http://hwak.iteye.com/blog/1611970 1. 在需要事务管理的地方加@Transactional 注解.@Transactional 注解可以被应用于接口定义和 ...

  3. 两种方法实现Python二分查找算法

    两种方法实现Python二分查找算法   一. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 arr=[1,3,6,9,10,20,30] def findnumber( ...

  4. 安装cloudera manager使用mysql作为元数据库

    1.首次安装好mysql数据库后,会生成一个随机密码,使用如下办法找到: cat /var/log/mysqld.log |grep password 2.首次安装好mysql数据库后,第一次登陆进去 ...

  5. EF更新时出错,An error occurred while updating the entries. See the inner exception for details

           在使用EF进行更新数据时出错,报出的异常是 "An error occurred while updating the entries. See the inner excep ...

  6. 【WPF】 前言

    [WPF] 前言 前段时间项目中用到了WPF,就边学边做项目,一个项目做下来有点感触,以此记录. 以前也开发过多个C/S项目, 一直都是用的Winform,Winform 做些简单的界面很方便,基本只 ...

  7. Qt 实现脉搏检测-1-心跳曲线部分

    最新的想法就是写一个显示脉搏的东西,主要就是通过串口读取硬件(检测心跳的)传来的数据,在显示一下. 先实现画心跳曲线 如下图 先来电干货, 首先,在这个代码中,第一次用到了list这个东东 所以,关于 ...

  8. PL/SQL查看表结构

    SET LONG 99999;SET LINESIZE 140 PAGESIZE 1000;SELECT DBMS_METADATA.GET_DDL('&OBJECT_TYPE','& ...

  9. 搭建高可用的Eureka注册中心

    搭建高可用的Eureka注册中心 一.搭建高可用的Eureka的作用 当服务器因种种原因导致Eureka注册中心(后面简称Eureka)服务当机(服务器跪了,异常关闭停止服务).这样就会影响到整个业务 ...

  10. 搞ACM的伤不起

    劳资六年前开始搞ACM啊!!!!!!!!!!  从此踏上了尼玛不归路啊!!!!!!!!!!!!  谁特么跟劳资讲算法是程序设计的核心啊!!!!!!  尼玛除了面试题就没见过用算法的地方啊!!!!!!  ...