Регистрация
логин
пароль
Хостинг Реселлинг хостинга VPS - Хостинг Аренда серверов Dedicated server
Хостинг:

VPS - Хостинг:

Аренда серверов:

Dedicated server:


службы мониторинга серверов

www.megastock.ru

Z-Payment
Яндекс Деньги
Moneybookers
Payment Network
Юнистрим
Contact
Сбербанк России
MasterCard
VISA
Система CONTACT
Почтовый перевод
ВТБ 24
WIRE USD EURO
Дилеры Z-PAYMENT
SMS оплата
Терминалы КИВИ
Терминалы Мульти-кассы
Терминалы ComePay
Терминалы FreeCash

Регистрация  доменов. Хостинг

Сервисы:










Справочное руководство по MySQL

7.5.8.4 Блокировка, осуществляемая различными операторами SQL в InnoDB

7.5.8.4 Блокировка, осуществляемая различными операторами SQL в InnoDB

  • SELECT ... FROM ...: согласованное чтение, которое производится из образа базы данных без блокировки.
  • SELECT ... FROM ... LOCK IN SHARE MODE: устанавливает совместно используемую блокировку следующего ключа на все считываемые индексные записи.
  • SELECT ... FROM ... FOR UPDATE: устанавливает эксклюзивную блокировку следующего ключа на все считываемые индексные записи.
  • INSERT INTO ... VALUES (...): устанавливает эксклюзивную блокировку на вставленную строку. Обратите внимание, что эта блокировка не является блокировкой следующего ключа и не предотвращает вставку другими пользователями записей в интервал перед вставленной строкой. Если произойдет ошибка дублирующегося ключа, оператор устанавливает блокировку совместного доступа на запись дублирующегося индекса.
  • INSERT INTO T SELECT ... FROM S WHERE ... устанавливает эксклюзивную (не следующего ключа) блокировку на каждую вставляемую в T строку. Осуществляет поиск по S как согласованное чтение, но устанавливает блокировки совместного доступа к следующему ключу на S, если включено ведение журнала MySQL. InnoDB в последнем случае должен устанавливать блокировки, так как при восстановлении работоспособности системы с повтором всех завершенных транзакций из резервной копии все операторы SQL должны запускаться точно таким же образом, как и изначально.
  • CREATE TABLE ... SELECT ... выполняет операцию SELECT как согласованное чтение или совместную блокировку, как и в предыдущем пункте.
  • REPLACE осуществляется так же, как и вставка, если нет конфликтов уникальных ключей. В противном случае эксклюзивная блокировка следующего ключа будет установлена на строку, которая должна быть обновлена.
  • UPDATE ... SET ... WHERE ...: устанавливает эксклюзивную блокировку следующего ключа для каждой записи, по которой производится поиск.
  • DELETE FROM ... WHERE ...: устанавливает эксклюзивную блокировку следующего ключа для каждой записи, по которой производится поиск.
  • Если для таблицы определены ограничения FOREIGN KEY, для любой вставки, обновления или удаления, для которых требуется проверка условий ограничения, устанавливается совместная блокировка на уровне записей, которые просматриваются для проверки ограничения. В InnoDB эти блокировки устанавливаются также в случае нарушения ограничения.
  • LOCK TABLES ...: устанавливает блокировку таблицы. Эта блокировка производится кодом уровня MySQL. Механизм автоматического обнаружения взаимоблокировок (deadlock) InnoDB не может детектировать взаимоблокировки, в которых участвуют такие блокировки таблиц (см. следующий раздел). Кроме того, поскольку MySQL ``знает'' о блокировке на уровне строки, возможно установление блокировки таблицы, в которой другой пользователь заблокировал строки. Но это не опасно для целостности транзакции. See section 7.5.14 Ограничения для таблиц InnoDB.





Сервисы от Prime-Hosting.Ru:













Copyright © 2008-2010
Prime Hosting
Prime Hosting. Хостинг, VPS - Хостинг, Аренда серверов, dedicated serverPrime Hosting. Хостинг, VPS - Хостинг, Аренда серверов, dedicated server:
Хостинг Реселлинг хостинга VPS - Хостинг Аренда серверов Dedicated server