0

我在 Windows localhost 上成功运行了 Grails 应用程序。然后我将战争部署到 Linux 上。整个应用程序正常工作,除了 Hibernate(我相信)不希望在那里创建任何表:

org.springframework.dao.InvalidDataAccessResourceUsageException:
   could not execute query;
   ...
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:
   Table 'xxx.yyy' doesn't exist
   ...
(no other errors noticed)

一旦我手动创建了所有表,该应用程序就可以正常工作。

问题是如何使表自动创建?就像它应该的那样。

本地 MySQL:

MySQL Ver 14.14 Distrib 5.5.28, for Win64 (x86)

服务器的 MySQL:

mysql  Ver 14.14 Distrib 5.5.24, for debian-linux-gnu (x86_64) using readline 6.2

文件/etc/tomcat7/context.xml

    <Resource name="jdbc/XXX" auth="Container"
          type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver"
          url="jdbc:mysql://localhost:3306/xxx"
          username="xxx" password="xxx" maxActive="20" maxIdle="10"
          removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"
          maxWait="-1"/>
4

1 回答 1

2

在您的休眠配置文件中将休眠属性 hbm2ddl.auto 设置为“创建”。

于 2012-12-02T16:04:34.713 回答