jooq 3.11.9 和 MySQL 版本 8.0.11

我正在使用 jooq 版本 3.11.9,并且我在本地安装了 MySQL Ver 8.0.11。在启动 jooq 与 Mysql 的连接时,出现以下错误:

org.jooq.exception.DataAccessException: SQL [select 1 as `one` from dual where exists (select 1 as `one` from `mysql`.`proc`)]; Table 'mysql.proc' doesn't exist

我了解 MySQL Ver 8.0.11 不包含此表。那么解决方案是什么?我无法降级 MySQL 版本,因为其他项目已经在使用此版本运行。


弑天下
浏览 169回答 2
2回答

红颜莎娜

该查询正是为了检查您是否在 MySQL 8+ 上运行。它不应该导致错误甚至堆栈跟踪(但可能是调试消息)。您可以放心地忽略它。如果您发现错误或堆栈跟踪消息,或者这导致您的代码生成失败,则可能是 jOOQ 的日志记录配置中的错误,我会邀请您在此处提交:https ://github.com/jOOQ/jOOQ /问题/新

森林海

正如您在 mysql发行说明中看到的:以前,有关存储的例程和事件的信息存储在 mysql 系统数据库的 proc 和 event 表中。这些表不再使用。相反,有关存储的例程和事件的信息存储在 mysql 系统数据库中的例程、事件和参数数据字典表中。旧表使用 MyISAM(非事务性)存储引擎。新表使用 InnoDB(事务)引擎。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java