基于mycat实现mysql读写分离

完成主从复制的配置

/* 主节点:192.168.47.101  从节点:192.168.47.102 */ /*mycat为同一网段客户端*/
/* 修改主节点基础配置文件 */ /* */
[mysqld]
server-id=101
log-bin /*重启服务 */
#systemctl restart mariadb /*创建从节点的账号 */ CREATE USER 'xie'@'192.168.47.102' IDENTIFIED BY '123456';
grant replication slave on *.* to xie@'192.168.47.102'; /*创建mycat*/ 能操作的账号 mysql> create database mycat;
mysql>GRANT ALL ON *.* TO 'root'@'192.168.8.10' IDENTIFIED BY '123456' WITH
GRANT OPTION;
mysql> flush privileges; /* 查看二进制日志位置*/
show master status ; +----------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+----------------------+----------+--------------+------------------+
| localhost-bin.000001 | 729 | | |
+----------------------+----------+--------------+------------------+ /*从节点 */ /* 修改主节点基础配置文件 */ /* */
[mysqld]
server-id=102
read-only=on
relay_log=/data/relay-log
#log-bin /*重启服务 */
#systemctl restart mariadb /*创建从属性 */ CHANGE MASTER TO MASTER_HOST='192.168.47.101',
MASTER_USER='xie', MASTER_PASSWORD='123456', MASTER_PORT=3306,
MASTER_LOG_FILE='localhost-bin.000001', MASTER_LOG_POS=729; /* 开启从复制 */ start slave ; /* 查看开启详情 */
show slave status \G ...
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
... /* 出现可忽略的错误解决方法 */
/*修改全局变量*/
stop slave;
sql_slave_skip_counter = 数量;
start slave;
/*修改配置文件 填入错误id 或者all*/
[mysqld]
slave_skip_errors=1007|ALL /*下载安装mycat*/ yum -y install java
/*确认安装成功*/
java -version /*安装wget*/
yum -y install wget /*wget mycat包*/
wget http://dl.mycat.io/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-
linux.tar.gz
/*创建安装目录*/
mkdir /apps
/*解压到安装目录*/
tar xf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz -C /app
/* 环境变量 */
echo 'export PATH=/apps/mycat/bin:$PATH' /etc/profile.d/mycat.sh
. /etc/profile.d/mycat.sh /*修改配置文件*/
vim /app/mycat/conf/server.xml
<user name="root"> /*连接Mycat的用户名*/
<property name="password">123456</property> /*连接Mycat的密码*/ /*修改分离策略*/
vim /app/mycat/conf/schema.xml balance="1"
<dataNode name="dn1" dataHost="localhost1" database="mycat" />
<writeHost host="host1" url="192.168.47.101:3306" user="root" password="123456">
<readHost host="host2" url="192.168.47.102:3306" user="root" password="123456" />
</writeHost> /*开启并查看是否成功*/ mycat start
cat /app/mycat/logs/wrapper.log | grep successfully /*连接测试*/ mysql -uroot -pmagedu -h127.0.0.1 -P8066 -DTESTDB
mysql> show databases;
+----------+
| DATABASE |
+----------+
| TESTDB | //只能看一个虚拟数据库
+----------+
mysql> use TESTDB;
mysql> create table t1(id int);
MySQL> select @@server_id; /*查看数据库的日志,发现修改在主服务器,读取在从服务器*/ set global general_log=on;

基于MYCAT中间件实现MYSQL读写分离的更多相关文章

  1. linux下mysql基于mycat做主从复制和读写分离之基础篇

    Linux下mysql基于mycat实现主从复制和读写分离1.基础设施 两台虚拟机:172.20.79.232(主) 172.20.79.233(从) 1.1软件设施 mysql5.6.39 , my ...

  2. Docker安装Mycat并实现mysql读写分离,分库分表

    Docker安装Mycat并实现mysql读写分离,分库分表 一.拉取mycat镜像 二.准备挂载的配置文件 2.1 创建文件夹并添加配置文件 2.1.1 server.xml 2.1.2 serve ...

  3. Mycat数据库中间件对Mysql读写分离和分库分表配置

    Mycat是一个开源的分布式数据库系统,不同于oracle和mysql,Mycat并没有存储引擎,但是Mycat实现了mysql协议,前段用户可以把它当做一个Proxy.其核心功能是分表分库,即将一个 ...

  4. mycat配置实现mysql读写分离

    需要先把mysql的主从复制配置好,然后才可以开始mycat的配置 m ysql主从复制配置:https://www.cnblogs.com/renjianjun/p/9093062.html myc ...

  5. Mycat - 实现数据库的读写分离与高可用

    前言 开心一刻 上语文课,不小心睡着了,坐在边上的同桌突然叫醒了我,并小声说道:“读课文第三段”.我立马起身大声读了起来.正在黑板写字的老师吓了一跳,老师郁闷的看着我,问道:“同学有什么问题吗?”,我 ...

  6. 高可用Mysql架构_Mysql主从复制、Mysql双主热备、Mysql双主双从、Mysql读写分离(Mycat中间件)、Mysql分库分表架构(Mycat中间件)的演变

    [Mysql主从复制]解决的问题数据分布:比如一共150台机器,分别往电信.网通.移动各放50台,这样无论在哪个网络访问都很快.其次按照地域,比如国内国外,北方南方,这样地域性访问解决了.负载均衡:M ...

  7. Mysql读写分离(Mycat版)

    (1).读写分离概述 1)工作原理 读写分离是让主数据库处理事务性增删改操作(insert.delete.update),让从数据库处理查询查询操作(select). 2)作用 1.分担负载 2.主从 ...

  8. MySQL中间件之ProxySQL_读写分离/查询重写配置

    MySQL中间件之ProxySQL_读写分离/查询重写配置 Posted on 2016-12-25 by mark blue, mark Leave a comment MySQL 1.闲扯几句 读 ...

  9. MySQL读写分离之MyCAT

    Mycat实现MySQL主从复制读写分离 MyCAT的安装及部署 1.部署jdk环境 MyCAT用Java开发,需要有JAVA运行环境,mycat依赖jdk1.7的环境 1)上传jdk [root@l ...

随机推荐

  1. 1.ini读写操作

    一.使用 TIniFile implementationvar  ini:tinifile;  path:string;       {ini文件路径}  section,key:string;{表示 ...

  2. docker启动cavisor监控

    docker启动cavisor监控 docker run --volume=/:/rootfs:ro --volume=/var/run:/var/run:rw --volume=/sys:/sys: ...

  3. python装饰器的构建

    #!/usr/bin/python3# -*-coding:utf-8 -*-# @Time : 2019/9/27 17:04# @Author : v_ctaozhang import funct ...

  4. CentOS下安装Docker CE教程

    一.安装前准备 1.硬件要求 CentOS 7(64-bit),内核版本不能低于3.10: CentOS 6.5(64-bit或更新的版本),内核版本为 2.6.32-431 或者更高版本,一般不建议 ...

  5. iOS UITextField限制输入字数

    关于iOS的文本框有时需要限制字数,如手机号,在UITextField的代理单纯写一个判断,在字数超过限制时,这时再想删除就删除不掉,可以在代理这样写,就解决 - (BOOL)textField:(U ...

  6. 创建vue 项目

    sudo npm install -g @vue/cli-init vue init webpack my-project cd my-project/ npm install npm run dev

  7. Fabric1.4 链码开发,开发模式下的测试

    关闭之前已启动的网络环境 sudo docker-compose -f docker-compose-cli.yaml down 进入devmode目录:  cd ~/go/src/github.co ...

  8. Exchange2010---反垃圾邮件配置

    Exchange2010---反垃圾邮件配置  Exchange2010---反垃圾邮件配置   本文以Exchange Server 2010作为反垃圾邮件配置实例为例.  其实,在微软发布的Exc ...

  9. day31 socket套接字编程

    为什么要有套接字编程? 在上节课的学习中,我们学习了OSI七层协议,但是如果每次进行编程时我们都需要一层一层的将各种协议使用在我们的程序中,这样编写程序实在是太麻烦了,所以为了让程序的编写更加的简单, ...

  10. 菜鸟系列docker——docker容器(7)

    docker 容器 1. docker 守护进程daemon Daemon是Docker的守护进程,Docker Client通过命令行与Docker Damon通信,完成Docker相关操作,Doc ...