Я использую сервер Percona (MySQL), в настоящее время разрабатывая сетевое настольное приложение с несколькими пользователями, которые используют приложение. Моя база данных приложений innodb с транзакциями, но у меня есть проблема при выборе, который Сделка транзакций Я должен использовать, мое приложение чувствительно, так как оно имеет финансовые отчеты. Итак, может кто-то помочь мне решить, какую транзакционную изоляцию я должен использовать?MySQL Transaction-Isolation
ответ
@deceze и @zerkms верны - это не характер ваших данных, который определяет лучшую изоляцию транзакций. Это характер вашего приложения и его запросов. Вы даже можете найти случаи использования обоих уровней изоляции в одном приложении.
Повторяется чтения операции убедитесь, что вы можете запросить одни и те же данные более чем один раз в течение данной транзакции, и ваши запросы будут возвращать неизменные данные - даже если данные были изменены другими сессиями в то же время. Ваша сессия не увидит эти изменения, даже если они были совершены, пока ваш сеанс не начнет новую транзакцию. Это полезно, например, для логического дампа всех данных. Также сложные отчеты, которые выполняют несколько шагов, и вам нужно читать одни и те же таблицы несколько раз.
Read-commit также позволяет другим сеансам изменять данные одновременно, но в вашей транзакции всегда будет отображаться последнее зафиксированное состояние данных. Таким образом, один и тот же запрос может возвращать разные (более современные) результаты, даже в течение одной и той же транзакции. Это полезно, потому что это уменьшает необходимость в том, чтобы база данных сохраняла старые версии строк для вашей долгосрочной транзакции.
Есть также сериализуемого и чтение незавершенных уровней изоляции, но это очень редко.
- 1. ActiveMQ: как правильно установить тип изоляции транзакции блокировки DB?
- 2. Несколько запросов MySQL MySQL
- 3. Условия хранения MySQL MySQL
- 4. База данных MySQL MySQL
- 5. MySQL защищает mysql DB
- 6. Mysql ошибка в MySQL
- 7. Оптимизация таблицы MySQL MySQL
- 8. Ошибка загрузки MySQL MySQL
- 9. Порядок работы MySQL MySQL?
- 10. MySQL не выполняет MySQL
- 11. Ошибка MySQL MySQL
- 12. База данных MySQL MySQL
- 13. Пустой стол MySQL MySQL
- 14. Таблица MySQL MySQL
- 15. MySQL SubQuery - MySQL 3.23
- 16. Ошибка подключения MySQL MySQL
- 17. Mysql-версия mysql count
- 18. Простое дублирование MySQL MySQL
- 19. mySQL
- 20. MySQL
- 21. MySQL
- 22. MySQL
- 23. MySQL
- 24. PHP Ошибка обновления MySQL MySQL
- 25. Соединение базы данных MySQL MySQL
- 26. Проблема с датой MySQL MySQL
- 27. Оптимизация архитектуры MySQL - кластер MySQL
- 28. mysql error: недействительный ресурс mysql
- 29. Добавление узлов MySQL MySQL Sql
- 30. MySQL буквенно-цифровая колонка MySQL
И вопрос ...? – zerkms
Какую транзакционную изоляцию я должен использовать? –
все зависит. Вы сначала читали http://dev.mysql.com/doc/refman/5.5/en/set-transaction.html? – zerkms