【问题标题】:Could not get database metadata for mysql on osx无法在 osx 上获取 mysql 的数据库元数据
【发布时间】:2013-06-12 09:39:33
【问题描述】:

我有一个包含 3000 个表的 mysql 数据库和一个休眠应用程序。它在 ubuntu 上运行良好,但在 Mac(homebrew) 上总是显示连接错误

ERROR org.hibernate.tool.hbm2ddl.SchemaUpdate - HHH000319: Could not get database metadata
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.

我怀疑mysql的某些设置需要更改,但不知道是哪一个。

【问题讨论】:

    标签: mysql macos hibernate jdbc homebrew


    【解决方案1】:

    您的数据库服务器似乎没有响应。

    检查 hibernate 的配置文件并确保它指向数据库的正确主机。

    如果您使用的是 localhost,请确保您在本地运行的 mysql 服务器已启动(psmysql 命令在这里应该有所帮助)并验证 hibernate 是否通过 UNIX 套接字进行通信,或者您在本地服务器中打开了网络(因为默认情况下它通常是关闭的,并且 TCP/IP 访问需要它,甚至访问本地主机)。

    【讨论】:

    • 我在 jdbc url 中添加了 'connectTimeout=0&socketTimeout=0' ,有时可以连接,但在运行某些查询时会断开连接。
    【解决方案2】:

    在 my.cnf 添加 'max_allowed_pa​​cket=20M' 后修复

    【讨论】:

      猜你喜欢
      • 2023-04-05
      • 2016-04-27
      • 1970-01-01
      • 2015-10-05
      • 1970-01-01
      • 2018-11-24
      • 2019-06-16
      • 2020-11-16
      • 1970-01-01
      相关资源
      最近更新 更多