mycat连接数据库之后导致表名全小写的问题分析研究

Jim Jim     2022-09-16     763

关键词:

初步研究:通过部署发现在Mycat中部署逻辑表表名大小写混合时,在Mycat连接后出现全变小。容易造成错误逻辑表(按混合表名创建物理表);

可能拯救的方法:

1、Linux下部署安装MySQL,默认不忽略表名大小写,需要手动到/etc/my.cnf下配置lower_case_table_names=1使Linux环境下MySQL忽略表名大小写,否则使用Mycat的时候会提示找不到表的错误!

2、官方上的Issues提到:在1.6.5 版本上验证没有出现这个问题。选择升级。

说明:

以上方法不一定可行,需要实践。可能还停留在实用阶段,对Mycat的理念还不是很了解导致上述的问题出现。

 

参考:

https://github.com/MyCATApache/Mycat-Server/issues/1498

http://it.dataguru.cn/thread-624130-1-1.html

linux下mysql表名大小写问题

...存导致hibernate无法找到表方案:如何配置hibernate能够屏蔽数据库中表名大小写问题要求:不能修改数据库参考技术A这个和hibernate无关,MYSQL的问题1、Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写;2、用roo... 查看详情

表名中的特殊字符和空格导致 VBA 数据库连接错误

】表名中的特殊字符和空格导致VBA数据库连接错误【英文标题】:SpecialcharacterandspacesintablenamecausingVBAdatabaseconnectionerror【发布时间】:2015-04-0217:48:42【问题描述】:我在连接到名为tbl:DailySales的Access数据库表时遇到问题,因为它... 查看详情

springboot+jpa(hibernate5)开发时,数据库表名大小写问题

这几天在用spring boot开发项目, 在开发的过程中遇到一个问题hibernate在执行sql时,总会提示表不存在。寻找之后发现, 建表时,表统一采用了大写。hibernate会把大写统一转换成小写。且mysql在 linux下 大小写敏... 查看详情

mycat学习笔记(代码片段)

概述1.Mycat是什么?Mycat是数据库中间件,连接Java应用程序和数据库,它的作用如下:读写分离数据分片:垂直拆分(分库)、水平拆分(分表)、垂直+水平拆分(分库分表)多数据源整合2.Mycat原理Mycat拦截了用户发送过来的SQL... 查看详情

一个因mysql大小写敏感导致的问题(代码片段)

...,禁止出现数字开头,禁止两个下划线中间只出现数字。数据库字段名的修改代价很大,因为无法进行预发布,所以字段名称需要慎重考 查看详情

小写的 HSQLDB 列名和表名

...表名和列名都转换为大写(TBL_ROLE、ID、NAME)。目的是使数据库中的名称与我的脚本中定义的完全一样。Flyway脚本:createtabletbl_rol 查看详情

mysql大写和小写问题

近期在将一个windows的mysql数据库转到linux上时,碰到表找不到问题,详细分析了下后发现原来是大写和小写问题。?在MySQL中,数据库和表对就于那些文件夹下的文件夹和文件。因而,操作系统的敏感性决定数据库... 查看详情

研华工业云dashboard如何连接数据库

...访问。2、数据源向导会自动启动,建立连接,连接成功数据库将是非常简单直观的。研华工业云面向智能制造、能源与环境、智慧城市服务、智慧零售、智慧医院和智慧建筑等行业领域的需求,基于涵盖设备智联、数字孪生、... 查看详情

sybase数据库:两个特别注意的地方

Sybase数据库:两个特别注意的地方一、字段别名  字段别名不能为查询条件中的列名,会导致查询出来的数据不准确;最好字段别名为非列名;二、更新的表名的大小写  updateaset....select...fromA....  这里的a表的大小写会导... 查看详情

大小写敏感的问题

...t文件导入MySQL后表名也会自动转化为小写,结果再想要将数据库导出放到linux服务器中使用时就出错了。因为在linux下表名区分大小写而找不到表,查了很多都是说在linux下更改MySQL的设置使其也不区分大小写,但是有没有办法反... 查看详情

mycat引起的insert后马上select不到数据的故障分析

...,这个时候很可能从库还没有把主库的t_task同步到e_task,导致查询不出来t_task所以e_task也没有插入。所以对于这种毫秒级的insert后马上查询,可以用如下的语句保证select语句走mycat的主库,解决这个bug<selectid="selectOneTaskByCode"res... 查看详情

mycat实现读写分离(代码片段)

...读写分离是很有必要的。当然应用要实现读写分离,首先数据库层要先做到主从配置。应用实现读写分离至少有两种方法:应用本身通过代码实现,例如基于动态数据源、AOP的原理来实现写操作时用主数据库,读操作时用从数据... 查看详情

mycat核心概念工作原理及高级特性分析(代码片段)

...会出现的问题做分析;这篇文章会接着继续进行分析数据库中间件中重要的mycat,在使用上有一些高级特性及核心概念、分片解决的办法做了 查看详情

hibernate映射postgresql数据库中的表时,表名是大写的时候为啥hibernate不能映射实体

...不能查询出数据,没有豆豆了,麻烦各位解答一下,谢谢数据库里面的字符不分大小写,但是java实体类的属性是敏感的,所以写配置文件时属性名一定要跟实体类里面一样的,列名不用管大小写问题。但是你写hql时:例如:selec... 查看详情

源码分析mycat专栏

...08;读写事件篇)6、源码分析mycat1.6之网络篇----前后端连接交互设计(mycat命令处理流程)7、源码分析MyCat之SQL解析篇-----sql解析引擎druid之抽象语法树(mycat1.6)8、源码分析MyCat----优化篇之支持ER分片多语句插入(基于1.6)9... 查看详情

hibernatehql语句类名大小写问题

...边那个User变成user导致我在一些MYSQL设置了大小写敏感的数据库的地方报错了谁知道他为什么没把User正常的转为user?参考技术AHibernate的语句是面象对象书写方式,在书写时要与你在映射文件中配置的实体名一致,映射文件中除了... 查看详情

hibernate怎么区分表名大小写(用的oracle数据库,想让他指向小写的表名)

参考技术AOracle的数据库的对象名,就是不区分大小写的啊。除非你建表的时候用双引号引起来的,比如"tablename"(强烈不建议这么做)否则,TableName、TABLENAME、tablename都是一样的,在oracle系统中都是以大写TABLENAME方式存... 查看详情

mycat插入语句导致的一个dobbo问题

2017-01-0311:11:52.621[com.alib]():[DUBBO]Sendheartbeattoremotechannel/121.43.177.8:20192,cause:Thechannelhasnodata-transmissionexceedsaheartbeatperiod:60000ms,dubboversion:2.5.3,currenthost:192.168.1 查看详情