Spring Security是否需要/推荐使用innodb?

时间:2011-03-02 20:38:07

标签: mysql grails spring-security innodb

我有一个使用Spring-Security-Core插件的grails应用程序,它将Spring Security 3集成到我的应用程序中。我相信Spring / Hibernate将在幕后进行一些事务操作。如果是这种情况,使用mysql的innodb引擎而不是默认的MyIsam引擎会更好吗?或者操作是否独立于底层数据库? 提前谢谢!

3 个答案:

答案 0 :(得分:2)

关于插件如何工作,没有什么特别的交易。它只读取 - 主数据库访问将加载用户和用户的指定角色。您需要在更新用户,分配角色等时使用事务,但这与安全性无关,这是正确的做法。

正如其他人所说,除了可能更适合NoSQL数据库的专用用例外,没有理由使用MyISAM。 InnoDB速度非常快,并且具有出色的事务支持。

答案 1 :(得分:1)

InnoDB强制实施参照完整性; MyISAM没有。

看起来MyISAM不支持事务/回滚:

http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-transactions.html

因此,如果需要事务管理器,最好使用InnoDB。

答案 2 :(得分:0)

其实我认为innodb引擎将是明智的选择。主要原因 - 持久性和数据完整性支持。 MyIsam更“脆弱”。现在只使用它的原因 - 巨大的插入活动 - 这不是你的情况(我试着不要太深入 - 它更复杂,不与问题联系)。