关于Mysql8.0版本驱动getTables返回所有库的表问题浅析
前言
本文主要介绍的是关于Mysql8.0驱动getTables返回所有库的表的相关内容,MySQL Connector/J 8.0版本驱动向下兼容之前的5.5+版本MySQL,如果你使用的是5.5+版本MySQL,都可以升级成8.0版本驱动。
如果你是使用的5.X版本驱动,需要将Driver Class换成: com.mysql.cj.jdbc.Driver
需要注意的是:
8.0版本驱动DataSource相关的参数有变化:
比如8.0版本驱动将参数 nullCatalogMeansCurrent 的默认值由true改为了false,如果你使用DatabaseMetaData.getTables
获取所有的表信息,8.0版本驱动将返回所有库的表。
// 默认会返回所有库的表,而不仅是datasource指定的库 databaseMetaData.getTables(null, null, null, new String[]{"TABLE"})
解决方案就是在连接池初始化时,将这个参数改为true,以HikariCP为例:
Java Config:
HikariConfig config = new HikariConfig(); ... config.addDataSourceProperty("nullCatalogMeansCurrent", true);
Spring Boot 配置:
spring.datasource.hikari.data-source-properties.nullCatalogMeansCurrent=true
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
浅析mysql.data.dll驱动各版本介绍
此处为mysql驱动mysql.data.dll 注意: 此处X86版本较多,X64版本较少 X64: X86: Vs添加引用过程: 总结 以上所述是小编给大家介绍的mysql.data.dll驱动各版本介绍,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的.在此也非常感谢大家对我们网站的支持!
-
详解Mybatis逆向工程中使用Mysql8.0版本驱动遇到的问题
前言 今天在使用 8.0.12 版的 mysql 驱动时遇到了各种各样的坑,在使用 JDBC 连接上遇到的问题可以参考我的上一篇博客.我在使用 mybatis 逆向工程生成各种 mapper , pojo , dao 时,遇到了一个困惑我好几个小时的错误,这个错误是 Result Maps collection already contains value for BaseResultMap 产生这个错误可能有各种原因.但是这里我只说我的原因及解决过程. 初步探索 我在网上查阅了大量的博客文章,
-
关于Mysql8.0版本驱动getTables返回所有库的表问题浅析
前言 本文主要介绍的是关于Mysql8.0驱动getTables返回所有库的表的相关内容,MySQL Connector/J 8.0版本驱动向下兼容之前的5.5+版本MySQL,如果你使用的是5.5+版本MySQL,都可以升级成8.0版本驱动. 如果你是使用的5.X版本驱动,需要将Driver Class换成: com.mysql.cj.jdbc.Driver 需要注意的是: 8.0版本驱动DataSource相关的参数有变化: 比如8.0版本驱动将参数 nullCatalogMeansCurr
-
关于MyBatis连接MySql8.0版本的配置问题
在学习mybatis时,遇到了一个错误,错误如下: Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 错误原因: 本地使用的数据库版本为MySQL8.0 在pom.xml配置文件中导入MySQL的jar包版本为 因为本地数据库版本与导入MySQL的jar包版本不一致引起的错误 解决办法: [1] 本地安装相应版本
-
MySQL8.0+版本1045错误的问题及解决办法
目录 一.管理员权限打开CMD 二.CD到自己的MySQL安装目录 三.停止MySQL服务 四.键入命令行 五.重新打开CMD窗口 六.登录MySQL数据库 七.密码改为空密码 八.刷新数据 九.退出数据库 十.启动MySQL服务 十一.命令行正常登录MySQL 使用命令行登录MySQL报错1045 Access denied for user ‘root’@‘localhost’ (using password:YES),折腾半天才解决问题. 一.管理员权限打开CMD 二.CD到自己的MySQ
-
Linux下卸载MySQL8.0版本的操作方法
一.关闭MySQL [root@localhost /]# service mysqld stop Redirecting to /bin/systemctl stop mysqld.service 二.查看当前安装mysql情况,查找以前是否装有mysql [root@localhost /]# rpm -qa|grep -i mysql mysql-community-client-8.0.13-1.el7.x86_64 mysql-community-libs-8.0.13-1.el7.x
-
MySQL8.0.24版本Release Note的一些改进点
4月20号,MySQL8.0更新了8.0.24这个版本,晚上看了下release note,整理了一些改进点,记录在这里,后续可以下载对应的版本进行测试. 一.连接管理 1.连接信息更详细 之前版本中,如果一个MySQL连接长时间没有和MySQL服务进行交互,则会收到一个MySQL Server has gone away的输出,没有具体的原因信息: 新版的MySQL Server会在连接关闭之前将连接关闭的原因写入到客户端,客户端能够看到更加详细的信息,来分析为什么连接被关闭. 2.连接错误信
-
MySQL8.0设置远程访问权限的方法
上一篇文章讲解了重置 MySQL 的密码,有同学反馈无法程连接到数据库,这是因为 MySQL 安装完成后只支持 localhost 访问,我们必须设置一下才可以远程访问,另外还有一些 MySQL 8.0 连接时的一些问题,本文也会一并进行讲解如何解决. 1.登录MySQL mysql -u root -p 输入您的密码 2.选择 mysql 数据库 use mysql; 因为 mysql 数据库中存储了用户信息的 user 表. 3.在 mysql 数据库的 user 表中查看当前 root 用
-
详解MySQL8.0+常用命令
开启远程访问 通过以下命令开启root用户远程访问权限: CREATE USER 'root'@'%' IDENTIFIED BY 'password'; GRANT ALL ON *.* TO 'root'@'%'; ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; FLUSH PRIVILEGES; 注:其中,password为root的密码,FLUSH PRIVILEGES为刷新权限 导入数
-
浅析centos 7 mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar
百度云盘: 链接: https://pan.baidu.com/s/1hv5rUWYK080hCuONqpSVCg 提取码: qhgp 安装说明: https://www.jb51.net/article/138787.htm 操作记录 mkdir mysql 40 ll 41 cd my 42 cd mysql/ 43 ll 45 tar -xvf mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar 46 ll 47 rpm -ivh mysql-communit
-
阿里云centos7中安装MySQL8.0.13的方法步骤
1.下载MySQL安装包 (这里是有技巧的,说不定我这时写这个的时候版本还是你看到时的旧版本了,如果已经不是8.0了,可以根据这样来 下新版本) 先进入官网 再将这两者一结合,就是最新版本的了 所以 [root@h1 ~]# rpm -ivh http://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm 2.安装mysql [root@localhost ~]# yum install -y mysql-server 或
随机推荐
- 存储于xml中需要的HTML转义代码
- Git安装和使用图文教程(分享)
- 解决前端跨域问题方案汇总
- C#中的委托和事件学习(续)
- php超快高效率统计大文件行数
- PHP+Memcache实现wordpress访问总数统计(非插件)
- Python 爬虫学习笔记之多线程爬虫
- Javascript !!的作用
- 利用shell编程实现DOS风格的Linux命令行
- js 判断登录界面的账号密码是否为空
- 浅谈jQuery中replace()方法
- jQuery插件实现屏蔽单个元素使用户无法点击
- javascript和jquery实现设置和移除文本框默认值效果代码
- .NET的动态编译与WS服务调用详解
- 实例分析Java中public static void main(String args[])是什么意思
- php设计模式 Facade(外观模式)
- 在JavaScript中调用php程序
- Laravel事件监听器用法实例分析
- 从0到1构建vueSSR项目之路由的构建
- 通过vue写一个瀑布流插件代码实例