企业实战_24_MyCat实现读写分离

接上一篇:企业实战_23_MyCat SQL防火墙
https://gblfy.blog.csdn.net/article/details/100074335

文章目录

          • 一、MyCat读写分离操作流程
          • 二、环境部署安排:
          • 三、主机操作103(node3)
            • 3.1. 数据备份
            • 3.2. 将node3.sql复制到节点5
            • 3.3. 导入数据
            • 3.4. 在查看是否创建主从同步的账号
            • 3.5. 创建 主从复制的账号
            • 3.6. 给用户赋予操作所有对象的replication slave权限
          • 四、在node5从机上创建复制链路
          • 五、给mycat用户授权
          • 六、读写分离
            • 6.1. 读写分离配置方式
            • 6.2. 读写分离+高可用
            • 6.3. zk脚本初始化
            • 6.4. 配置同步验证
            • 6.5. 最终的mycat集群架构

一、MyCat读写分离操作流程

在这里插入图片描述

二、环境部署安排:
主机名IP地址角色
node1192.168.92.101MYCAT MYSQL,ZK,Haproxy,Keepalived
node2192.168.92.102MYSQL,ZK
node3192.168.92.103MYSQL,ZK
node4192.168.92.104MYSQL,MYCAT ,Haproxy,Keepalived
node5192.168.92.105MYSQL
三、主机操作103(node3)
3.1. 数据备份
mysqldump --master-data=2 --single-transaction --routines --triggers --events -uroot -p --databases  product_db order_db03 order_db04  > node3.sql
3.2. 将node3.sql复制到节点5
scp node3.sql root@192.168.92.105:/root
3.3. 导入数据
mysql -uroot -p < node3.sql
3.4. 在查看是否创建主从同步的账号
mysql -uroot -p
use mysql;
#看是否存在re_impl主从复制账号
select user,host from user;
3.5. 创建 主从复制的账号
 create user 'im_repl'@'192.168.92.%' identified by '123456'; 
3.6. 给用户赋予操作所有对象的replication slave权限
 grant replication slave on *.* to 'im_repl'@'192.168.92.%'; 
四、在node5从机上创建复制链路
# 登陆数据库
mysql -uroot -p # 建立复制的链路 
change master to master_host='192.168.92.103',master_user='im_repl',master_password='123456',MASTER_LOG_FILE='mysql-bin.000012', MASTER_LOG_POS=21272;# 查看链路
show slave status \G# 启动复制链路
start slave;# 查看链路
show slave status \G

在这里插入图片描述

现在完成了,mysql主从复制的建立

五、给mycat用户授权

登录node5,查看是否给mycat用户授权

mysql -uroot -p123456
use mysql;# 看是否存在re_impl主从复制账号
select user,host from user;# 在mysql主机上新建用户用来操作数据库
create user im_mycat@'192.168.92.%' identified by '123456';# 给操作数据库读写的用户赋予权限
grant  select,insert,update,delete,execute on *.* to im_mycat@'192.168.92.%';
六、读写分离
6.1. 读写分离配置方式

读写分离的准备工作

登录mycat节点(node1或者node4节点)
现在可以修改zk就可以同步mycat配置,由于不直观,现暂时采用修改mycat配置文件,在初始化zk数据,最后同步配置

6.2. 读写分离+高可用
cd /app/mycat/conf/zkconf/# 修改配置文件
vim schema.xml

咱们对node3节点做的读写分离和高可用,因此,找到node3节点对应的dataHost 标签#添加readhost标签,进行修改,在

将writeHost 标内部新增readHost 标签,在writeHost外部添加writeHost标签(节点5)

<dataHost balance="3" maxCon="1000" minCon="10" name="mysql92103" writeType="0" switchType="1" dbType="mysql" dbDriver="native"><heartbeat>select user()</heartbeat><writeHost host="192.168.92.103" url="192.168.92.103:3306" password="123456" user="im_mycat">
</writeHost></dataHost>

调整为


<dataHost balance="3" maxCon="1000" minCon="10" name="mysql92103" writeType="0" switchType="1" dbType="mysql" dbDriver="native"><heartbeat>select user()</heartbeat><writeHost host="192.168.92.103" url="192.168.92.103:3306" password="123456" user="im_mycat"><readHost host="192.168.92.105" password="123456" url="192.168.92.105:3306" user="im_mycat"/>
</writeHost>
<writeHost host="192.168.92.105" password="123456" url="192.168.92.105:3306" user="im_mycat"/></dataHost>

注:上面多添加一组写标签是为了,当主机宕机后,就把读写都移到从机上来,来达到mysql的高可用

将修改后的mycat配置信息,通过初始化zookeeper脚本,来将信息同步到zookeeper集群中,在同步zookeeper集群把信息同步到2台mycat中

6.3. zk脚本初始化

重新将zk数据初始化,通过zk集群将mycat配置文件进行同步

cd /app/mycat/bin/
[root@node4 bin]# ./init_zk_data.sh
o2021-07-15 21:44:04 INFO JAVA_CMD=java
o2021-07-15 21:44:04 INFO Start to initialize /mycat of ZooKeeper
o2021-07-15 21:44:11 INFO Done
6.4. 配置同步验证

查看刚才在zkconf服务器上修改的 schema.xml文件,mycat配置是否同步node1和node4服务器

# 登录node1节点
[root@node1 ~]# cd /app/mycat/conf/
[root@node1 conf]# cat schema.xml

在这里插入图片描述

# 登录node4节点
[root@node4 ~]# cd /app/mycat/conf/
[root@node4 conf]# cat schema.xml

在这里插入图片描述

6.5. 最终的mycat集群架构

在这里插入图片描述

下一篇:企业实战_19_Mycat_keepalived 安装配置验证

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/523385.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c#中计算三角形面积公式,C#源代码—三角形面积、圆的面积

三角形面积、圆的面积using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace _2{public abstract class shape{private string mc;public shape(string s){Mc s;}public string Mc{get{return mc;}set{mc value;}}public double Are…

Storm精华问答 | 为什么要用Storm?不用Spark?

戳蓝字“CSDN云计算”关注我们哦&#xff01;Apache Storm是一个分布式实时大数据处理系统。Storm设计用于在容错和水平可扩展方法中处理大量数据。它是一个流数据框架&#xff0c;具有最高的摄取率。今天&#xff0c;我们就挑一些Storm的安装配置问题来看看吧。1Q&#xff1a;…

oracle读取表空间物理文件中数据,shell脚本读取oracle数据库数据写入到文件中

1、linux 需要用 sqlplus 客户端去连接oracle 数据库&#xff0c;首先需要确认有没有安装&#xff1a;which sqlplus2、如果没有安装就需要先安装一下(百度)3、配置环境变量&#xff1a;vim /etc/profile4、执行 source /etc/profile5、whereis oracle #查看oracle 客户端安装…

做“云”,京东云是认真的!

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 刘晶晶在2018年&#xff0c;京东云的营收达到了三位数的增长&#xff0c;10倍于行业增速&#xff1b;18个月的时间&#xff0c;京东云推出了超过200项的PaaS/IaaS服务……京东云总裁申元庆在2019全球人工智能技术大会上接受采…

这位博士跑赢“地震波”:提前 10 秒预警宜宾地震!

戳蓝字“CSDN云计算”关注我们哦&#xff01;整理 | 胡巍巍出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;天府之国四川&#xff0c;又遭地震&#xff01;据中国地震台网测定&#xff1a;6月17日22时55分&#xff0c;四川省宜宾市长宁县发生6.0级地震&#xff0c;…

oracle10gasmcmd,ORACLE 10g中ASMCMD使用及ASM文件

ORACLE 10g中ASMCMD使用及ASM文件XML DB访问1.引言自动存储管理(ASM)是Oracle数据库10g的新功能&#xff0c;它为数据库管理员提供了一个简单的存储管理界面&#xff0c;并且该界面在所有服务器和存储平台上都是一致的。作为专门为Oracle数据库文件创建的整合的文件系统和卷管理…

企业实战_04_MyCat常用配置文件详解

Mycat 常用配置文件,配置灵活&#xff0c;能应用于场景很多&#xff0c;建议根据应用场景去记忆&#xff0c;要理解&#xff01; 接上一篇&#xff1a;企业实战_03_MyCat下载、安装、启动 https://gblfy.blog.csdn.net/article/details/100049304 文章目录一、Mycat目录说明二、…

OpenStack精华问答 | OpenStack是云吗?

自诞生以来&#xff0c;OpenStack 似乎一直被质疑&#xff0c;其背后最重要的两大推手 NASA 和 Rackspace 都弃它而去&#xff0c;惠普、思科接连宣布关闭基于 OpenStack 的公有云服务&#xff0c;但是,OpenStack 依旧坚挺。1Q&#xff1a;openstack介绍A&#xff1a;openstack…

mclmcrrt77 matlab,mclmcrrt77.dll下载

mclmcrrt77.dll文件作为应用程序中非常重要的一个组件&#xff0c;如果弄丢或者报错后会出现很多麻烦的事情&#xff0c;这时候大家只需要到本站来下载该文件包&#xff0c;然后按照本站的安装方法进行安装就可以修复了&#xff01;mclmcrrt77.dll介绍如果您的系统提示“找不到…

社会保障查询

公积金个人用户登录&#xff1a; http://www.zzz.gov.cn/wtgrgjj/index.html http://www.bjrbj.gov.cn/csibiz/home/index.html

是是是

Mycat - 实现数据库的读写分离与高可用&#xff1a; https://www.cnblogs.com/youzhibing/p/9553766.html Mycat - 高可用与负载均衡实现&#xff0c;满满的干货&#xff01; https://cloud.tencent.com/developer/article/1388391 Mycat读写分离、热备、分表分库 http://www…

3类6种,主流容器操作系统全比较

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | Frank Brown来源 | RancherLabs介 绍容器已迅速成为现代数据中心的必要组成部分。容器可以构建在各类操作系统中&#xff0c;那么企业该如何选择最合适的操作系统来运行自己的容器&#xff1f;在容器部署时&#xff0c;研发…

mongodb php代码实例,php操作mongoDB实例分析

本文实例讲述了PHP操作mongoDB的方法。分享给大家供大家参考。具体分析如下&#xff1a;mongoDB数据库是一种以json格式存储的数据库,非常适用于各种应用开发,这里就来给各位朋友介绍一些mongoDB学习实例.mongodb想要整合PHP,需要安装Mongo扩展,这个比较简单,现在说一下MongoDB…

实战_23_高可用负载均衡集群的实现(Mycat+ZK +HAProxy + Keepalived)

接上一篇&#xff1a;实战_22_Mycat设置开机自启https://blog.csdn.net/weixin_40816738/article/details/100086556 文章目录一、高可用集群架构实现思路二、环境部署准备2.1. 环境部署总览2.2. 架构图总览2.3. 架构图解说明三、架构功能分析3.1. 场景案例分析3.2. 架构功能点…

oracle与db2 市场占有率,oracle 与 DB2 的区别

1、DB2 访问前10行数据与Oracle区别DB2 :select * from test fetch first 10 rows onlyOracle :select * from test where rownum<10查询语句Db2:不提供隐形转换select * from employee where empno1010;oracle&#xff1a;提供隐形转换select * from employee where empno1…

拒修电脑后,妹子又约我学机器学习,好烦(甜)!

事情是这样的&#xff0c;自前年给学妹修了半年电脑后&#xff0c;我俩一直没联系&#xff0c;最近这位学妹最近又联系我&#xff0c;问我是否了解人工智能&#xff0c; 在得知我已经研究并且从事相关工作后&#xff0c;她立马约我出来认真聊聊。我的内心&#xff1a;好烦啊&am…

gbase 8s oracle,GBase8s 查看数据库表空间信息

onstat -d 查看数据库表空间信息onstat -d命令用于检查数据库空间的使用情况[gbasedbtnode13 ~]$ onstat -dYour evaluation license will expire on 2021-08-27 00:00:00GBase Database Server Version 12.10.FC4G1TL -- On-Line (Prim) -- Up 00:16:02 -- 2023104 KbytesDbsp…

2019年普通高等程序员招生统一考试

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | 表姐也有话讲来源 | 表哥有话讲2019年普通高等程序员招生统一考试题号一二三总得分一、选择题&#xff08;每题5分&#xff0c;共计50分&#xff09;1、SQL语句写了一天都没过&#xff0c;这个时候应该&#xff08;&#xff…

MybatisPlus_进阶

#数据库连接 spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/mp_high?userSSLfalse&characterEncondingUTF-8&serverTimezoneGMT%2B8username: rootpassword: root # 日志管理 logging:level:root: warncom.gblf…