Требуется / рекомендуется ли innodb для Spring Security? - PullRequest
0 голосов
/ 02 марта 2011

У меня есть приложение grails, которое использует плагин Spring-Security-Core, который интегрирует Spring Security 3 в мое приложение. Я верю, что Spring / Hibernate сделает некоторые транзакционные операции под капотом. Если это так, то лучше ли использовать движок mysql innodb вместо движка MyIsam по умолчанию? или операции не зависят от базовой базы данных? Заранее спасибо!

Ответы [ 3 ]

2 голосов
/ 03 марта 2011

Нет ничего особенно транзакционного в том, как работает плагин.Он только читает - основной доступ к базе данных будет загружать пользователя и назначенные ему роли.Вы захотите использовать транзакции при обновлении пользователя, назначении ролей и т. Д., Но это не имеет ничего общего с безопасностью, это просто правильная вещь.

Как говорили другие, причин для использования очень малоMyISAM за исключением особых случаев использования, которые, вероятно, лучше подходят для базы данных NoSQL.InnoDB очень быстр и имеет отличную поддержку транзакций.

1 голос
/ 02 марта 2011

InnoDB обеспечивает ссылочную целостность; MyISAM нет.

Похоже, что MyISAM не поддерживает транзакции / откат:

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

Так что, если вам нужен менеджер транзакций, лучше использовать InnoDB.

0 голосов
/ 02 марта 2011

На самом деле я думаю, что двигатель innodb будет мудрым выбором. Основная причина - долговечность и поддержка целостности данных. MyIsam более "хрупкий". Единственная причина использовать это сейчас - огромная активность вставки - и это не ваш случай (я стараюсь не углубляться в это - это более сложно и не связано с вопросом).

...