当前位置:网站首页>mycat读写分离配置
mycat读写分离配置
2022-07-29 02:54:00 【ELIAUK``】
为什么使用MyCat
如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候NoSQL的出现暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上的提升。但是,在有些场合NoSQL一些折衷是无法满足使用场景的,就比如有些使用场景是绝对要有事务与安全指标的。这个时候NoSQL肯定是无法满足的,所以还是需要使用关系性数据库。如何使用关系型数据库解决海量存储的问题呢?此时就需要做数据库集群,为了提高查询性能将一个数据库的数据分散到不同的数据库中存储,为应对此问题就出现了——MyCat
同时也可以使用读写分离,解决单点问题,让线路分开,压力也就不会这么大,如果一个出现宕机,另外一个还可以继续运行,同时也能搭建读写分离主从,一个负责读,一个负责写,如果一个宕机了,另外一台读写,如果恢复了,那就还是正常使用
mycat读写分离实战部署
移动安装包到/data里面
tar xvf Mycat-server-1.6.6.1-release-20031195535-linux.tar.gz #解压bin ---启动文件
catlet ---没什么用
conf ---初始配置文件,包括读写分离等都在这里面配置
cd bin ./mycat start启动mycat失败后
#安装java yum install javanetstat -tnlp 查看是否开启成功有8066就是成功/也可以使用
ps -ef | grep mycat进入conf配置两个主要文件,schema.xml和server.xml
首先配置schema.xml(其中里面的TESTDB工作原理:若干个数据库连接mycat然后客户端也连接mycat,主要也是伪装一个数据库,因为我们开发也是主要连接这个一个假的数据库,然后再去分发给真的,这样比较安全)
连接数据库:mysql -uuser -p -P8066 -h127.0.0.1 密码:user

读写分离:1个主1个从,当用户读取的时候,连接的是下面S,如果是写的话连接的是上面这台M,一般用到这种架构的情况就是数据库压力比较大,数据库扛不住,遇到了瓶颈,才会使用读写分离,读写分开,如果压力还大的话,就会在加一台从库,就变成2台负责读,1台写,一般读得压力比较大。所以高可用和负载均衡都可以就看大家的需求了
检查一下数据库是否可以执行1主2从
show slave status\G编写schema.xml配置文件
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="gpsdb2020" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn2"></schema>
<schema name="zhangsan" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn3"></schema>
<dataNode name="dn2" dataHost="localhost1" database="gpsdb2020" />
<dataNode name="dn3" dataHost="localhost1" database="zhangsan" />
<dataHost name="localhost1" maxCon="500" minCon="20" balance="1" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<writeHost host="master" url="192.168.174.133:3306" user="rep" password="123456">
<readHost host="slave" url="192.168.174.143:3306" user="rep" password="123456" />
</writeHost>
</dataHost>
</mycat:schema>修改这里:

配置server.xml
<user name="admin">
<property name="password">admin</property>
<property name="schemas">gpsdb2020,zhangsan</property>
</user>
保存启动 ./mycat stop ./mycat start
边栏推荐
猜你喜欢

Flink kernel source code (VII) Flink SQL submission process

C language: hollow square pattern

Interpretation of ue4.25 slate source code

My approval function of conference OA project

Verilog's time system tasks - $time, $stime, $realtime

IDEA安装后无法启动

【FreeSwitch开发实践】UniMRCP编译与安装

2022-07-28 第四小组 修身课 学习笔记(every day)

数仓中概念术语解析

从零开始实现lmax-Disruptor队列(六)Disruptor 解决伪共享、消费者优雅停止实现原理解析
随机推荐
kubernetes-1.24.x 特性
Analyzing the subjective consciousness of emotional resonance between robots and human beings
vim常用命令
MySQL large table joint query optimization, large transaction optimization, avoiding transaction timeout, lock wait timeout and lock table
Redis configuration cache expiration listening event trigger
C陷阱与缺陷 第3章 语义“陷阱” 3.3 作为参数的数组声明
CentOS install mysql8
Interpreting AI robots' pet raising and leading fashion trends
04 | 后台登录:基于账号密码的登录方式(上)
金山云回港上市:中国TO B云厂商的港股奔袭
融云 IM & RTC 能力上新盘点
【C】数组
Verilog:阻塞赋值和非阻塞赋值
C语言程序设计 | 交换二进制数奇偶位(宏实现)
Hangao database best practice configuration tool Hg_ BP log collection content
Algorithm --- paint the house (kotlin)
sqlilabs less-32~less-33
Analysis of OWT server source code (III) -- video module analysis of mixer in
Implementation principle of golang synergy
C language: Little Lele and hexadecimal conversion