MySQL----利用Mycat配置读写分离

news2024/11/28 22:52:01
首先确保主从复制是正常的,具体步骤在MySQL----配置主从复制。MySQL----配置主从复制

环境

  • master(CtenOS7):192.168.200.131 ----ifconfig查看->ens33->inet
  • slave(win10):192.168.207.52 ----ipconfig查看->无线局域网适配器 WLAN:-> IPv4 地址
  • 保证两个环境中MySQL版本一致,这里使用8.0
  • 使用Mycat读写分离配置,所以要JDK环境,建议使用JDK1.7版本以上(java -version检查jdk环境)
    在这里插入图片描述
  • MySQL的root账户有远程访问权限

设置

  • 登录到mysql
    在这里插入图片描述

  • 选择mysql数据库,使用查看权限select Host,User from user;注意:确保master 和 slave 都允许远程连接
    在这里插入图片描述
    在这里插入图片描述

  • % 表示可以任何地址来进行连接。如果不是百分号,使用 grant all privileges on *.* to 'root'@'%' identified by 'xxxxx' with grant option; 来修改。xxxxxxx为root的密码。—MySQL 5.x版本 grant all on *.* to 'root'@'%';—MySQL 8x版本

  • 刷新权限flush privileges;

  • 重启mysql服务service mysqld restart

安装与配置

安装Mycat

  1. 下载Mycat安装包,大家可以自己寻找,如果需要的话可以留言,我发给大家。
  2. 在linux下载lrzsz可以方便的上传安装包。进入root用户,yum search lrzsz,找到安装包。
    在这里插入图片描述
  3. 安装yum install lrzsz.x86_64
  4. 命令行输入rz,找到安装包所在位置,选择安装包,进行上传安装包。sz下载到windows
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  5. 解压tar -zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz
    在这里插入图片描述
    在这里插入图片描述
  6. 建立软链接 ln -s /mycat/mycat/bin/mycat /usr/bin/mycat 要找对自己的安装的位置,进行建立。
    在这里插入图片描述
  7. 验证是否成功 输入mycat ,会有提示,这时说明成功了。
    在这里插入图片描述

配置

  1. 在mycat下的conf文件夹中找到 server.xml
    在这里插入图片描述
  2. vim server.xml
  3. 修改,保存退出 要改为自己的密码
    在这里插入图片描述
  4. 使用MySQL 8.x的mysql命令连接Mycat时,在server.xml文件的system标签下必须配置如下选项。
<property name="useHandshakeV10">1</property>
<property name="defaultSqlParser">druidparser</property>

在这里插入图片描述

  1. 备份一份schema.xml,cp schema.xml schema.xml.bk
  2. 进入 vim schema.xml ,配置读写分离,分库分表等内容
    在这里插入图片描述
  3. :%d删除所有,进行配置
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<!-- 逻辑数据库 -->
<schema name="USERDB" checkSQLschema="false" sqlMaxLimit="100"
dataNode="dn1"></schema>
<!-- 存储节点 -->
<dataNode name="dn1" dataHost="node1" database="mytest" />
<!-- 数据库主机 -->
<dataHost name="node1" maxCon="1000" minCon="10" balance="3"
writeType="0" dbType="mysql" dbDriver="native"
switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<!-- can have multi write hosts -->
<writeHost host="192.168.200.131" url="192.168.200.131:3306"
user="root"
password="955955">
<!-- can have multi read hosts -->
<readHost host="192.168.207.52" url="192.168.207.52:3306"
user="root" password="123456" />
</writeHost>
<!-- 写数据库宕机后的备份数据库 -->
<writeHost host="192.168.207.52" url="192.168.207.52:3306"
user="root"
password="955955" />
</dataHost>
</mycat:schema>

在这里插入图片描述

配置逻辑库USERDB,数据节点 dn1,物理数据库mytest。
注意:上述黄框里面的内容,要改成自己的ip以及密码,mytest是当前主库,从库主从复制已有的数据库。

相关参数

balance:
“0”:不开启读写分离
“1”:全部的readHost和stand by writeHost参与select语句的负载
“2”:所有读操作随机在readHost和writeHost上分发
“3”:所有读请求随机分发到writeHost对应的readHost上执行
writeType=“0”:所有写操作发送到配置的第一个writeHost,第一个挂掉切换到还生存的第二个
writeHost
switchType:
“-1”:不自动切换
“1”:自动切换,根据心跳select user()
“2”:基于MySQL的主从同步状态决定是否进行切换 show slave status

  1. vim /etc/my.cnf 添加如下内容
sql_mode=""
default_authentication_plugin = mysql_native_password
  1. 启动mycat,mycat start,查看端口信息 netstat -tanp | grep 66
    在这里插入图片描述
  2. 说明端口正常工作了。
  3. 如果有问题,可以查看日志 ,wrapper.log是启动相关的,mycat.log是运行相关的。
    在这里插入图片描述
  4. vim * wrapper.log 查看日志
    在这里插入图片描述
    在这里插入图片描述
  5. 连接成功,如果显示一些连接失败,也可以在日志里面找到原因。
    在这里插入图片描述

端口

  • 8066:数据端口
  • 9066:管理端口

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

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

相关文章

RabbitMQ 开发指南

连接RabbitMQ 连接方式一&#xff1a; 也可以选择使用URI的方式来实现 连接方式二&#xff1a; Connection接口被用来创建一个Channel&#xff0c;在创建之后&#xff0c;Channel可以用来发送或者接收消息。 Channel channel conn.createChannel();使用交换器和队列 声明…

React 中的服务器渲染组件

在前后分离架构以前&#xff0c;所有的 Html 业务都是后端渲染&#xff0c;返回前前端显示&#xff0c;后端渲染把前后端逻辑耦合在一起&#xff0c;增大系统的复杂度&#xff0c;不易于扩展。React 中的 Server组件&#xff0c;准确的说是服务器进行渲染&#xff0c;无论是什么…

物联网边缘网关在物联网应用中有哪些优势?天拓四方

随着物联网技术的快速发展&#xff0c;越来越多的设备接入网络&#xff0c;数据交互日益频繁&#xff0c;对数据处理和传输的要求也越来越高。在这样的背景下&#xff0c;物联网边缘网关应运而生&#xff0c;以其低延迟、减少带宽消耗、提高数据质量和安全性等优势&#xff0c;…

小林图解系统-三、操作系统结构

Linux 内核 vs Windows 内核 内核 作为应用连接硬件设备的桥梁&#xff0c;保证应用程序只需要关心与内核交互&#xff0c;不需要关心硬件的细节 内核具备四个基本能力&#xff1a; 管理进程、线程&#xff0c;决定哪个进程、线程使用CPU&#xff0c;也就是进程调度的能力&a…

ArcGIS查找相同图斑、删除重复图斑

​ 点击下方全系列课程学习 点击学习—>ArcGIS全系列实战视频教程——9个单一课程组合系列直播回放 点击学习——>遥感影像综合处理4大遥感软件ArcGISENVIErdaseCognition 这次是上次 今天分享一下&#xff0c;很重要却被大家忽略的两个工具 这两个工具不仅可以找出属性…

【总线】AXI4第二课时:深入AXI4总线的基础事务

大家好,欢迎来到今天的总线学习时间!如果你对电子设计、特别是FPGA和SoC设计感兴趣&#xff0c;那你绝对不能错过我们今天的主角——AXI4总线。作为ARM公司AMBA总线家族中的佼佼者&#xff0c;AXI4以其高性能和高度可扩展性&#xff0c;成为了现代电子系统中不可或缺的通信桥梁…

PHP转Go系列 | 条件循环的使用姿势

大家好&#xff0c;我是码农先森。 条件 在 PHP 语言中条件控制语句&#xff0c;主要有 if、elseif、else 和 switch 语句 // if、elseif、else 语句 $word "a"; if ($word "a") {echo "a"; } elseif ($word "b") {echo "b&…

【论文笔记】LoRA LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS

题目&#xff1a;LoRA: LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS 来源: ICLR 2022 模型名称: LoRA 论文链接: https://arxiv.org/abs/2106.09685 项目链接: https://github.com/microsoft/LoRA 文章目录 摘要引言问题定义现有方法的问题方法将 LORA 应用于 Transformer 实…

无源编缆测尺助力料场实现自动化堆取料作业

随着工业4.0时代的到来&#xff0c;智能化、无人化成为现代工业发展的重要趋势。在港口码头、钢铁冶金、焦化等高耗能行业中&#xff0c;如何实现物料的精准测量与无人化操作&#xff0c;成为企业提高生产效率、降低人工成本的关键。武汉市微深节能科技有限公司凭借其先进的分段…

【面试干货】抽象类与接口的区别

【面试干货】抽象类与接口的区别 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在Java编程中&#xff0c;抽象类和接口是两个非常重要的概念&#xff0c;它们都为代码的可扩展性和复用性提供了基础。但是&#xff0c;它们之间也有一些明显…

class的流光效果

效果图&#xff1a; 代码示例 <!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title&g…

React路由笔记(函数组件,自用)

配置 npm i react-router-dom基本使用 目录结构 在src中创建page文件夹放置各页面组件&#xff0c;router中放置路由 1、router中配置路由 在/router/index.js中&#xff0c;使用createBrowserRouter配置路由。 import { createBrowserRouter } from "react-router…

[Python人工智能] 四十六.PyTorch入门 (1)环境搭建、神经网络普及和Torch基础知识

从本专栏开始,作者正式研究Python深度学习、神经网络及人工智能相关知识。前文讲解合如何利用keras和tensorflow构建基于注意力机制的CNN-BiLSTM-ATT-CRF模型,并实现中文实体识别研究。这篇文章将介绍PyTorch入门知识。前面我们的Python人工智能主要以TensorFlow和Keras为主,…

Flutter第十四弹 抽屉菜单效果

目标&#xff1a; 1.怎么构建抽屉菜单效果&#xff1f; 2.抽屉菜单怎么定制&#xff1f; 一、抽屉菜单 侧滑抽屉菜单效果 1.1 抽屉菜单入口 Flutter 的脚手架Scaffold&#xff0c;默认提供了抽屉菜单效果入口。 主页面采用一个简单的页面&#xff0c;侧滑菜单首先使用一个I…

三星与SK海力士:以混合键合技术引领3D DRAM革新之路

在高速缓存内存&#xff08;HBM&#xff09;领域持续领跑的三星与SK海力士&#xff0c;正以混合键合技术为突破口&#xff0c;开启3D DRAM技术的新纪元。这一战略转型不仅预示着存储技术的深度革新&#xff0c;更体现了两大半导体巨头在提高集成度、优化性能与成本上的不懈追求…

【计算机网络篇】数据链路层(11)在数据链路层扩展以太网

文章目录 &#x1f354;使用网桥在数据链路层扩展以太网&#x1f95a;网桥的主要结构和基本工作原理&#x1f388;网桥的主要结构&#x1f50e;网桥转发帧的例子&#x1f50e;网桥丢弃帧的例子&#x1f50e;网桥转发广播帧的例子 &#x1f95a;透明网桥&#x1f50e;透明网桥的…

图论——代码随想录打卡

1 DFS深度搜索算法 深度优先搜索算法是从一个方向去进行搜索&#xff0c;直到遇到走不下去的终点&#xff0c;再进行回溯更换方向&#xff0c;重新进行搜索。因此有回溯也就意味着存在递归&#xff1a; void dfs(参数&#xff09;{处理节点dfs(图&#xff0c;选择的节点)回溯…

Hi3861 OpenHarmony嵌入式应用入门--0.96寸液晶屏 iic驱动ssd1306

使用iic驱动ssd1306&#xff0c;代码来源hihope\hispark_pegasus\demo\12_ssd1306 本样例提供了一个HarmonyOS IoT硬件接口的SSD1306 OLED屏驱动库&#xff0c;其功能如下&#xff1a; 内置了128*64 bit的内存缓冲区&#xff0c;支持全屏刷新;优化了屏幕刷新速率&#xff0c;…

AI发展核心要素之一(算力)

背景&#xff1a; 当今时代&#xff0c;云计算、人工智能、视频会议、短视频和各种社交媒体等行业蓬勃兴起&#xff0c;而ChatGPT-OpenAI的一次又一次的版本更新和迭代更是将我们带入了AI时代的新纪元。在2023年底的华为全联接大会上&#xff0c;孟晚舟就曾在演讲中表示:“算力…

云计算【第一阶段(17)】账号和权限管理

目录 一、用户账号和组账号概述 1.1、用户账号的三种角色 1.2、组账号的两个角色 二、用户账号文件 2.1、/etc/passwd 2.2、/etc/shadow 2.3、chage 命令 三、组账号文件 3.1、/etc/group 3.2、/etc/gshadow 四、添加组账户 4.1、添加删除组成员 4.2、删除组账号 …