“无法获取表元数据”“从 NDBCLUSTER 收到错误 157‘未知错误代码’”

Posted

技术标签:

【中文标题】“无法获取表元数据”“从 NDBCLUSTER 收到错误 157‘未知错误代码’”【英文标题】:"could not get table metadata" "Got error 157 'Unknown error code' from NDBCLUSTER" 【发布时间】:2014-11-11 17:04:18 【问题描述】:

我正在开发一个 java web 应用程序,我使用 mysql Cluster for Database

当我尝试在 Jboss 服务器中安装应用程序时收到此错误

.... org.hibernate.exception.GenericJDBCException:无法获取表元数据:MY_TABLE_NAME …… 原因:java.sql.SQLException: Got error 157 'Unknown error code' from NDBCLUSTER

环境信息:

产品环境 jbos eap 6.2 具有 2 个数据节点的 mysql 集群 jboss 数据源 URL: jdbc:mysql:loadbalance://,/BASE_NAME?loadBalanceBlacklistTimeout=5000

【问题讨论】:

【参考方案1】:

该问题通常源于您执行的 SQL 与 JDBC 实现不兼容,请尝试添加一些精细的日志记录以查看执行了什么来获取元数据。

以下是 Hib 中的一般问题类型

JDBCConnectionException - 指示底层 JDBC 通信出错。 SQLGrammarException - 表示发出的 SQL 存在语法或句法问题。 ConstraintViolationException - 表示某种形式的完整性约束违规。 LockAcquisitionException - 指示获取执行请求操作所需的锁定级别的错误。 最后一个: GenericJDBCException - 没有失败到任何其他类别的通用异常。

【讨论】:

我会检查节点是否已启动并测试与 Jboss 数据源的连接,如果一切顺利,我会按照您的建议尝试添加日志,谢谢 :)

以上是关于“无法获取表元数据”“从 NDBCLUSTER 收到错误 157‘未知错误代码’”的主要内容,如果未能解决你的问题,请参考以下文章