Система транзакций MySQL полностью соответствует стандарту ACID по безопасности транзакций для таблиц типа InnoDB и BDB. В более старых типах таблиц, таких как MyISAM, механизм транзакции не предусмотрен. Транзакции в таких системах можно реализовать с помощью явной блокировки таблиц (подробнее об этой процедуре можно узнать в разделе "Блокировка таблиц как замена транзакций").
Термин ACID является аббревиатурой, определяющей четыре основных условия, ко­торым должны удовлетворять реляционные СУБД, поддерживающие работу с транзак­циями. Для того чтобы удовлетворять требованиям ACID, реляционная СУБД должна обладать следующими характеристиками: атомарность (atomicity), целостность (consistency), изолированность (isolation) и живучесть (durability).
Атомарность
Атомарность означает, что каждая транзакция рассматривается как единый и не­делимый блок. При условии, что транзакция состоит из двух или более задач, транзакция считается успешной, если все входящие в нее операторы завершаются успешно. В случае если транзакция завершится ошибкой, система должна быть возвращена в исходное состояние. 
Обратимся к предыдущему примеру с фондовой биржей. Здесь атомарность означает следующее: для того чтобы транзакция считалась завершенной, продажа акций маклером A и покупка их маклером B не могут проходить независимо друг от друга. Аналогично, в примере с наймом служащих атомарность означает, что невозможно добавить служащего в базу данных без создания соответствующей записи в списочном составе и журнале учета ведомости отдела.
Атомарное выполнение представляет собой решение "все или ничего". При атомар­ном выполнении, если какой-либо из операторов в транзакции по какой-либо причине не будет выполнен, всем предыдущим операторам будет дан откат для того, чтобы не была нарушена целостность базы данных. Это очень важно для реальных приложений целевого назначения (какими бывают финансовые системы), выполняющие ввод или изменение данных и предлагающие высокую степень защиты от скрытых потерь данных.
Целостность
Целостность поддерживается, если каждая транзакция после своего завершения ос­тавляет систему в целостном состоянии независимо от успешности или неуспешности завершения транзакции. Опять вернемся к предыдущему примеру с фондовой биржей. Здесь целостность означает, что вычитание со счета продавца должно привести к равно­сильному начислению на счет покупателя. Если транзакция уменьшает счет маклера A на 400 акций, увеличивая при этом счет маклера B на 300 акций, ограничение по целостности будет нарушено, т.к. общее количество акций в системе изменится. Аналогично, свойство целостности необходимо обеспечить при удалении служащего из системы: удаление всех данных, имеющих отношение к этому служащему, включая данные в общей ведомости.
В MySQL целостность обеспечивается, прежде всего, механизмами регистрации MySQL, записывающими все изменения в базе данных и прослеживающими аудиторский след для восстановления транзакции. Если система отказывает в процессе выполнения транзакции, процедура восстановления MySQL определит успешность завершения транзакции по регистрационным журналам и при необходимости сделает откат. Таким образом, свойство целостности гарантирует, что ни в какой момент времени не должно быть незаконченной транзакции.