The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

Как оптимизировать выполнение INSERT запросов в MySQL
Для того чтобы INSERT операции не влияли на производительность SELECT запросов
используют конструкции:
   "INSERT DELAYED" и "INSERT LOW_PRIORITY" (UPDATE LOW_PRIORITY) 
Позволяют отложить включение данных до тех пор, пока не завершаться текущие
операции чтения из базы,
при том, что если накопилось несколько "DELAYED", то данные будут добавлены одним блоком. 
При DELAYED управление возвращается сразу, LOW_PRIORITY возвращает управление
только после завершения записи.

Для увеличения скорости выполнения большого числа INSERT/UPDATE/DELETE 
рекомендуется группировать несколько операторов в рамках одного лока или транзакции:
   LOCK TABLES table WRITE; (BEGIN;)
   INSERT'ы ...... (но не много, чтобы не столкнуться с deadlock)
   UNLOCK TABLES; (COMMIT;)
 
20.12.2003 , Источник: http://www.mysql.com/doc/ru/Insert_...
Ключи: speed, pri, delete, lock, select, benchmark, mysql, delay / Лицензия: CC-BY
Раздел:    Корень / Программисту и web-разработчику / SQL и базы данных / MySQL специфика / Оптимизация и администрирование MySQL



Ваш комментарий
Имя:         
E-Mail:      
Заголовок:
Текст:



  Закладки на сайте
  Проследить за страницей
Created 1996-2018 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
Hosting by Ihor