Spec-Zone.ru › MySQL 9.2

17.2 InnoDB и модель ACID

Эта модель представляет собой набор принципов проектирования баз данных, которые подчеркивают аспекты надёжности, важные для бизнес-данных и критически важных приложений. MySQL включает компоненты, такие как движок хранения InnoDB, которые тесно придерживаются модели ACID, чтобы данные не повреждались, а результаты не искажались из-за исключительных ситуаций, таких как сбои программного обеспечения и аппаратные неполадки. Когда вы полагаетесь на функции, совместимые с ACID, вам не нужно изобретать велосипед для проверки целостности и механизмов восстановления после сбоев. В случаях, когда у вас есть дополнительные программные средства защиты, высоконадёжное оборудование или приложение, которое может терпеть небольшую потерю данных или несоответствие, вы можете настроить параметры MySQL, чтобы обменять часть надёжности ACID на большую производительность или пропускную способность.

В следующих разделах рассматривается, как функции MySQL, в частности движок хранения InnoDB, взаимодействуют с категориями модели ACID:

  • A: атомарность.

  • C: согласованность.

  • I:: изоляция.

  • D: долговечность.

Атомарность

Аспект атомарности модели ACID в основном связан с InnoDB. Соответствующие функции MySQL включают:

  • Параметр autocommit.

  • Оператор COMMIT.

  • Оператор ROLLBACK.

Согласованность

Аспект согласованности модели ACID в основном связан с внутренним InnoDB обработкой для защиты данных от сбоев. Соответствующие функции MySQL включают:

  • Буфер двойного записи InnoDB. См. Раздел 17.6.4, «Буфер двойного записи».

  • InnoDB восстановление после сбоя. См. Восстановление InnoDB после сбоя.

Изоляция

Аспект изоляции модели ACID в основном связан с InnoDB, в частности с , которая применяется к каждой транзакции. Соответствующие функции MySQL включают:

  • Параметр autocommit.

  • Уровни изоляции транзакций и оператор SET TRANSACTION. См. Раздел 17.7.2.1, «Уровни изоляции транзакций».

  • Детали низкого уровня InnoDB. Подробности можно просмотреть в таблицах INFORMATION_SCHEMA (см. Раздел 17.15.2, «Информация о транзакциях и блокировках InnoDB INFORMATION_SCHEMA») и таблицах схемы производительности data_locks и data_lock_waits.

Долговечность

Аспект долговечности модели ACID включает функции программного обеспечения MySQL, взаимодействующие с вашей конкретной конфигурацией оборудования. Из-за множества возможностей, зависящих от возможностей вашего процессора, сети и устройств хранения, этот аспект сложнее всего предоставить конкретные рекомендации. (А эти рекомендации могут принимать форму “приобретите новое оборудование”.) Соответствующие функции MySQL включают:

  • Буфер двойного записи InnoDB. См. Раздел 17.6.4, «Буфер двойного записи».

  • Переменная innodb_flush_log_at_trx_commit.

  • Переменная sync_binlog.

  • Переменная innodb_file_per_table.

  • Буфер записи в устройстве хранения, таком как жёсткий диск, SSD или массив RAID.

  • Кэш с батарейным питанием в устройстве хранения.

  • Операционная система, используемая для запуска MySQL, в частности её поддержка системного вызова fsync().

  • Источник бесперебойного питания (ИБП), защищающий электропитание всех серверов и устройств хранения, на которых работают серверы MySQL и хранятся данные MySQL.

  • Ваша стратегия резервного копирования, такая как частота и типы резервных копий, а также сроки хранения резервных копий.

  • Для распределённых или размещённых приложений с данными — особенности центров обработки данных, где находится оборудование для серверов MySQL, и сетевые соединения между центрами обработки данных.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-9.2-en/mysql-acid.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API