一什么是MyCat
- 一个彻底开源的,面向企业应用开发的大数据库集群
- 支持事务、ACID、可以替代MySQL的加强版数据库
- 一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群
- 一个融合内存缓存技术、NoSQL技术、HDFS大数据的新型SQL Server
- 结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品
- 一个新颖的数据库中间件产品
二什么使用MyCat 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB。对数据的各种 操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候NoSQL的出现 暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上 的提升。但是,在有些场合NoSQL一些折衷是无法满足使用场景的,就比如有些使用场景是绝对要有事务与安 全指标的。这个时候NoSQL肯定是无法满足的,所以还是需要使用关系性数据库。如何使用关系型数据库解决 海量存储的问题呢?此时就需要做数据库集群,为了提高查询性能将一个数据库的数据分散到不同的数据库中 存储,为应对此问题就出现了——MyCat
Mycat作用为:能满足数据库数据大量存储;提高了查询性能 1. 读写分离 2. 数据分片 垂直拆分(分库) 、 水平拆分(分表) 、 垂直+水平拆分(分库分表) 3. 多数据源整合
Mycat安装部署
启动MySQL服务
systemctl start mysqld
mysql -uroot -p123456
master配置二进制
vim /etc/my.cnf
server-id=1
log_bin=mysql-bin
slave配置二进制
server-id=2
relay-log=relay-bin
relay-log-index=slave-relay-bin.index
master数据库中创建权限用户
grant replication slave on . to 用户@‘ip’ identified by '密码’
关闭防火墙
firewall-cmd --add-port=3306/tcp --permanent
firewall-cmd --add-port=3306/tcp
查看防火墙状态
slave
创建从服务开启从服务
change master to
master_host
master_user
master_password
master_log_file
master_log_pos
start slave
查看yes
show slave status\G
在master上创建一个数据库在数据库中创建数据表并插入数据用来验证
mycat
安装jdkbu211-linux-x64.tar.gz包
tar zxf 解压之后就可直接使用
mv jdk /usr/local/java
vim /etc/profile
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin/:$PATH:/usr/local/mycat/bin
source(来源) /etc/profile
安装mycat
wget http://dl.mycat.org.cn/1.6.7.6/20211118155357/Mycat-server-1.6.7.6-release-20211118155357-linux.tar.gz
创建权限用户
tar zxf Mycat
mv mycat /usr/local
进入conf中
修改配置文件schema.xml
修改server.xml
更改user name=‘用户’(你登陆用户)
执行命令. /etc/profile
在mycat关闭mycat端口
firewall-cmd --add-port=8066/tcp --permanent
firewall-cmd --reload
Mycat命令
console | start | stop | restart | status | dump
使用mycat用户登录master主机验证是否成功
验证是否能查到创建的数据表
验证是否能查看数据表内容
如果发现重新启动报内存问题
[root@mycat mycat]# vim conf/wrapper.conf
wrapper.startup.timeout=300 //超时时间300秒
wrapper.java.additional.10=-Xmx2G
wrapper.java.additional.11=-Xms512M