MyCat|Shardingsphere-proxy:jdbc连接MySQL8.0.33的query_cache_size异常解决方案

news2024/10/6 4:07:08

当前版本:MySQL 8.0.33 ,Mycat-server-1.6.7.6-release-20220524173810-win,apache-shardingsphere-5.3.2-shardingsphere-proxy-bin,jdk 1.8

1. 问题的主要背景

  1. MySQL 8.0.33版本,搭建了主从复制,需要借助中间件实现读写分离操作
  2. 使用了Mycat-server-1.6.7.6-release-20220524173810-win.tar 作为连接MySQL的门面,连接端口为8066,并完成了正常配置
  3. 使用java的jdbc连接却报错了:java.sql.SQLException: Unknown system variable 'query_cache_size'

2. 解决过程

本人的解决方法如下:

本人通过查询过很多文章,并尝试了其中的代码(网上还有人修改源码吐了),但是无法解决该问题。通过分析发现query_cache_size是在8.0版本中被移除了(其实这个是一个小问问题,就是框架突然查询了这个数据导致的异常错误,只是这个异常被框架抛出给了jdbc连接导致不能查询数据!)

事情的转机:

由于一次偶然的机会在使用apache-shardingsphere-5.3.2-shardingsphere-proxy-bin也出现了相同的错误,也是爆出了这个异常也是无法解决(但是突然想到shardingsphere中的lib是没有mysql的驱动的),所以必然也会碰到这个问题,这个问题肯定已经是解决了的

在这里插入图片描述

若是官方没有没有解决这个问题是不可能发布的!所以一定有配置项可以规避这个问题,就是不执行查询query_cache_size变量的方法

通过本人查找发现shardingsphere-proxy中有一个配置项(是server.yaml文件)可以修改(就是mysql的版本)?,配置项(proxy-mysql-default-version)中添加版本给人看?这里可能有其他用法
在这里插入图片描述
突然灵光一闪,修改一下这个,然后重新测试发现成功了!!!

后面的就是联想到MyCat,发现这个更加奇怪,lib库中居然直接使用8.0.25的驱动程序

在这里插入图片描述

所以MyCat实际上已经解决了这个问题,不然为什么人家直接放8.0.25的驱动程序,所以MyCat必然有与shardingsphere-proxy,相同的关系修改并避免这个问题。

经过查看配置项发现了如下
在这里插入图片描述
居然模拟MySQL的版本号,尝试修改一下:
在这里插入图片描述

测试成功了

3. 具体解决方案如下

  1. MyCat 修改server.xml中的fakeMySQLVersion为8.0以上可以解决这个问题,不需要修改源代码,jdbc就可以连接
  2. Shardingsphere-proxy只需要修改server.xml文件中的props中的proxy-mysql-default-version为8.0以上同样可以解决这个问题,jdbc也可以直接连接

注意navicat可能会有schema的异常,但是五官紧要!!!

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

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

相关文章

24 VueComponent 的 render

前言 这是最近的碰到的那个 和响应式相关的问题 特定的操作之后响应式对象不“响应“了 引起的一系列的文章 主要记录的是 vue 的相关实现机制 呵呵 理解本文需要 vue 的使用基础, js 的使用基础 测试用例 测试用例如下, 一个简单的 按钮事件的触发 问题的调试 编译…

微软正在研究使 Linux 脚本更安全

导读据悉,微软正在研究使 Linux 脚本更安全 微软正在研究使 Linux 脚本更安全 在本周的 Linux 安全峰会上,systemd 的创建者 Lennart Poettering 发表了演讲,他在过去的一年中被微软雇佣,他和微软的其它工程师们正在努力提高 Lin…

Linux 下进行权限修改 chmod命令

查看权限 ls -l 文件名该命令可以查看文件的详细属性,包括文件的权限 权限含义 -rwxrwxrwx在文件系统中,user、group、others的权限是分开的,第一个rwx代表user的权限、第二个rwx代表group的文件、第三个rwx代表others的权限 字符含义值…

Storm学习笔记

1 Storm是什么 Apache Storm是一个分布式实时流式大数据处理框架。 2 计算框架对比 (1) Storm是在线处理数据方式,Mapreduce/spark是离线处理数据方式。 (2) Mapreduce数据处理特点 海量数据处理:G、T、P级都能处理 全量数据集同时处理&#xff1…

纯js实现在线文字识别,从图片中提取文本信息

当你需要将图片中的文字内容提取出来时,你可能想到了手动输入或者使用OCR技术。而当你需要进行在线文字识别时,一个纯JavaScript实现的OCR工具可能会成为你的优选方案。 纯JavaScript,使得在浏览器内部进行文字识别变得可能。 此外&#x…

chatgpt赋能python:Python文件备份:保障数据安全,高效便捷的备份方案

Python文件备份:保障数据安全,高效便捷的备份方案 在日常工作中,文件备份是保障数据安全的必要措施。Python作为一个强大的编程语言,在文件备份方面有着出色的表现。本文将重点介绍Python文件备份的相关知识。 Python文件备份的…

矿井水深度除氟装置CH-87的技术应用

今天,文章中会谈到的问题是关于煤化工废水深度处理除氟、总氮、砷等污染物工艺技术的拆解分析,用什么样的工艺技术能把矿井水中的氟、砷、总氮做到1个毫克升以下的标准符合达标排放?希望能对相关行业起到一定的帮助作用。我国是一个资源丰富的…

《安富莱嵌入式周报》第313期:搬运机器人,微软出的C语言手册,开源生物信号采集板,开源SMD回流焊,开源SDR无线电,汽车级机器人评估板

周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 更新一期视频教程: DSP视频教程第12期:TI开源分享IQmath DSP源码,适用于所有Cortex…

TCP通信流程详解

目录 什么是TCP协议? 三次握手和四次挥手 TCP通信流程: socket(): bind():绑定函数 listen():监听函数 accept():和客户端建立连接 connect():客户端连接服务器函数 read()/recv():读取函数 write() /send():写入函数 close():关闭连接 为什…

第63篇:美国NSA量子注入攻击的流量特征及检测方法

Part1 前言 大家好,我是ABC_123,公众号正式更名为”希潭实验室”,敬请关注。前不久花时间研究了美国NSA的量子注入攻击手法,并在Hackingclub山东济南站技术沙龙做了分享。对于这种攻击手法部分网友嗤之以鼻,认为是老美…

Linux下的进程状态和 僵尸/孤儿进程的区别

目录 Linux进程的各种状态的表示: R状态的测验: S状态的测验: T状态的测验: 这次讲解一个新指令:kill -l t状态测验:追踪暂停 X状态:死亡状态 Z状态:僵尸状态 进程一直处于…

过孔焊盘~尺寸、间隙、通流能力

过孔焊盘 导通孔(via)焊盘尺寸 a) 外层焊盘环宽(A)要大于5mil,内层焊盘环宽(A)要大于8mil, 推荐导通孔孔径及焊盘尺寸如下: b) 推荐反焊盘大小尺寸≥过孔焊盘+20MIL。 走线与金属化孔间的最小间隙 推荐的走线距金属…

Roblox 不但不支持 Linux,还屏蔽了 Wine

导读据悉,Roblox 不但不支持 Linux,还屏蔽了 Wine。 Roblox 不但不支持 Linux,还屏蔽了 Wine 多人游戏 Roblox 没有 Linux 原生版本,但之前可以通过 Wine 在 Linux 上运行。不过其最新的反作弊软件专门屏蔽了 Wine 应用&#xff…

XuperChain共建守护者系列藏品震撼发行,最新合成玩法揭秘

5月30日上午10点,百度超级链重磅推出「XuperChain共建守护者系列」藏品。「XuperChain共建守护者徽章系列」自身具有权益,也可与共建徽章系列藏品合成新藏品,玩法多多、福利多多,等你探索! 共建守护者系列共计20款藏品…

智能集成接口:I3 ISA-95 的应用

介绍 多年来,使用基于制造运营管理 (MOM) 的应用程序的制造 IT 顾问试图说服制造商这些类型的应用的高价值。实时 MOM 解决方案是唯一一组能够精确优化工厂日常运营的 IT 应用程序,可为其可用性流程带来可创造的价值,…

《操作系统》期末客观题梳理

《操作系统》复习(1-9) 文章目录 《操作系统》复习(1-9)Ⅰ知识点概念第一章操作系统导论第二章进程描述与控制第三章处理机调度死锁第四章进程同步第五章存储器管理第六章虚拟存储器第七章输入输出系统第八章文件管理第九章磁盘存…

探索无限可能:物联网技术的未来应用引领智能化时代

⭐ 物联网技术⭐ 物联网技术的应用⭐ 物联网发展和创新挑战 当我们回顾过去几十年的科技发展,不难发现物联网技术的崛起和蓬勃发展。物联网的概念已经成为当今科技领域的热门话题,它正在以惊人的速度渗透到我们的日常生活中。从智能家居到智能城市&#…

【C++】map容器

更明确的类型重命名规则using 在C语言中typedef将一个变量提升为一种类型: typedef int * p;//p是int*类型//int Array[10];//Array是一个可装10个int类型变量的数组。typedef int Array[10];//Array是一个可装10个int类型变量的数组的类型//Array arr;…

[golang 微服务] 1.单体式架构以及微服务架构介绍

一.单体架构 在了解微服务之前首先看看单体架构,单体架构在 中小企业内部用的是非常多的,当 业务不复杂, 团队规模不大的时候,单体架构比微服务架构具有 更高的生产率,比如2017年前的淘宝都是单体架构 单体架构的程序部署在单台服务器 这种架…

计算机网络考试多选题汇总Ⅱ

https://cadyin.blog.csdn.nethttps://blog.csdn.net/qq_38639612?spm1010.2135.3001.5421 计算机网络考试多选题汇总 1、在Windows中,任务管理器的作用是() A.终止未响应的应用程序 B.终止进程的运行 C.查看系统当前的信息 …