Hibernate使用InnoDB而不是MyISAM

时间:2012-10-08 06:09:51

标签: mysql hibernate glassfish-3

创建表时,如何让hibernate使用InnoDB而不是MyISAM? Hibernate: Create Mysql InnoDB tables instead of MyISAM的建议对我不起作用。

我使用的是Glassfish 3.1.2和MySql 5.此外,我还在Mac OSX Lion上通过XAMPP安装了MySQL。

1 个答案:

答案 0 :(得分:0)

经过大量研究,我了解到将数据库默认设置为InnoDB并不是一种好习惯。有很多原因,比如InnoDB价格昂贵。根据所有的推理,我得出结论,如果将InnoDB默认设置为最佳实践,则很可能数据库将如此配置。所以我一直在寻找不同的解决方案。

无论如何,解决方案是这样的: 转到glassfish并将以下属性添加到相关的JDBC连接池中。

Name: SessionVariables
Value: storage_engine=InnoDB.

这对我来说就像一个魅力。 如果有人有更好的解决方案,我真的很想听听。