Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / MySQL / Справочник по языку MySQL /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Кэш запросов в MySQL - Программирование от RIN.RU
Кэш запросов в MySQL



Параметры кэша запросов в запросе SELECT


В запросе SELECT можно указывать две опции для кэша запросов:


Опция Описание
SQL_CACHE Если SQL_QUERY_CACHE_TYPE имеет опцию DEMAND, позволяет запросу кэшироваться. Если SQL_QUERY_CACHE_TYPE имеет опцию ON, является состоянием по умолчанию. Если SQL_QUERY_CACHE_TYPE имеет опцию OFF, ничего не делать.
SQL_NO_CACHE Делает данный запрос некэшируемым, не разрешает хранить в кэше данный запрос.



Статус и поддержка кэша запросов


С помощью команды FLUSH QUERY CACHE можно дефрагментировать кэш запросов с целью лучшего использования его памяти. Эта команда не удалит ни одного запроса из кэша. Команда FLUSH TABLES также записывает на диск содержимое кэша запросов.


Команда RESET QUERY CACHE удаляет все результаты запросов из кэша запросов.


Можно контролировать функционирование кэша запросов в SHOW STATUS:


Переменная Описание
Qcache_queries_in_cache Количество запросов, зарегистрированных в кэше.
Qcache_inserts Количество запросов, добавленных в кэш.
Qcache_hits Количество результативных обращений в кэш.
Qcache_not_cached Количество не кэшированных запросов (не подлежащих кэшированию или из-за установок SQL_QUERY_CACHE_TYPE).
Qcache_free_memory Величина свободной памяти для кэша запросов.
Qcache_total_blocks Общее количество блоков в кэше запросов.
Qcache_free_blocks Количество свободных блоков памяти в кэше запросов.



Общее количество запросов = Qcache_inserts + Qcache_hits + Qcache_not_cached.


Кэш запросов использует блоки переменной длины, так что параметры Qcache_total_blocks и Qcache_free_blocks могут показывать фрагментацию памяти кэша запросов. После команды FLUSH QUERY CACHE остается только один (большой) свободный блок.


Примечание: каждый запрос нуждается как минимум в двух блоках (один для текста данного запроса и один или больше - для результатов запроса). Для каждой используемой в запросе таблицы также требуется один блок, но если два или более запросов используют одну и ту же таблицу, требуется выделение только одного блока.

<<<  Назад
 1  2  3 


 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Структура языка

Типы данных столбцов

Функции, используемые в операторах SELECT и WHERE (часть 1)

Функции, используемые в операторах SELECT и WHERE (часть 2)

Обработка данных: SELECT, INSERT, UPDATE, DELETE

Определение данных: CREATE, DROP, ALTER

Основные команды пользовательских программ MySQL

Команды управления транзакциями и блокировками в MySQL

Полнотекстовый поиск в MySQL

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь