Grails在从H2切换到MySQL时更改表名的大小写

Grails在从H2切换到MySQL时更改表名的大小写,mysql,hibernate,grails,gorm,Mysql,Hibernate,Grails,Gorm,我有一个Grails应用程序,它已经在H2数据库上正常工作了几个月。所有的表名和列名都是大写的。我在投入生产时切换到MySQL,应用程序停止工作。即使是计算表的行数这样的简单操作也返回0。我知道我正在成功地连接到MySQL数据库,所以我认为这不是一个问题 当我在GUI中查看表内容时,我注意到正在创建其他表,这些表的名称类似,但都是小写而不是大写。因此,我的好数据都在表'FOO'下,但根据转储到控制台的Hibernate查询,我的Grails应用程序正在查找'FOO'(它是空的)。除了url(更新

我有一个Grails应用程序,它已经在H2数据库上正常工作了几个月。所有的表名和列名都是大写的。我在投入生产时切换到MySQL,应用程序停止工作。即使是计算表的行数这样的简单操作也返回0。我知道我正在成功地连接到MySQL数据库,所以我认为这不是一个问题

当我在GUI中查看表内容时,我注意到正在创建其他表,这些表的名称类似,但都是小写而不是大写。因此,我的好数据都在表'FOO'下,但根据转储到控制台的Hibernate查询,我的Grails应用程序正在查找'FOO'(它是空的)。除了url(更新后指向MySQL数据库而不是H2数据库)、驱动程序类(com.MySQL.jdbc.driver)和方言(org.hibernate.dialogue.mysqldialogue)之外,我没有更改Grails设置中的任何内容

应用程序也对列名执行相同的操作。我检查了MySQL服务器设置,我的小写字母表名称变量设置为0


有人知道问题出在哪里吗?

为什么不将所有表重命名为小写?我试图避免这种情况,因为我倾向于懒惰:)在阅读Grails手册后,我可以看到GORM自动将该约定选择为小写。我不知道为什么它用大写加H2。可能跟H2方言有关。