创建表时,如何让hibernate使用InnoDB而不是MyISAM? Hibernate: Create Mysql InnoDB tables instead of MyISAM的建议对我不起作用。
我使用的是Glassfish 3.1.2和MySql 5.此外,我还在Mac OSX Lion上通过XAMPP安装了MySQL。
答案 0 :(得分:0)
经过大量研究,我了解到将数据库默认设置为InnoDB并不是一种好习惯。有很多原因,比如InnoDB价格昂贵。根据所有的推理,我得出结论,如果将InnoDB默认设置为最佳实践,则很可能数据库将如此配置。所以我一直在寻找不同的解决方案。
无论如何,解决方案是这样的: 转到glassfish并将以下属性添加到相关的JDBC连接池中。
Name: SessionVariables
Value: storage_engine=InnoDB.
这对我来说就像一个魅力。 如果有人有更好的解决方案,我真的很想听听。