Spec-Zone.ru › MySQL 5.7

14.2 InnoDB и модель ACID

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

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

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

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

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

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

Атомарность

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

  • Параметр autocommit.

  • Оператор COMMIT.

  • Оператор ROLLBACK.

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

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

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

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

Изоляция

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

  • Параметр autocommit.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Spec-Zone.ru

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