Buy this Reference Manual in softcover from Barnes & Noble!
Для кэша запросов в MySQL добавляется несколько системных переменных для mysqld
, которые могут быть установлены в конфигурационном файле или из командной строки при запуске mysqld
.
query_cache_limit
- не кэшировать результаты, большие, чем указано (по умолчанию 1Мб).query_cache_size
- память, выделенная для хранения результатов старых запросов. Если равно 0
, то кэширование запроса блокируется (по умолчанию).query_cache_startup_type
- можно установить следующие (только числовые) значения:
Опция | Описание |
0 |
OFF (``ВЫКЛЮЧЕНО''), результаты не кэшировать и не извлекать |
1 |
ON (``ВКЛЮЧЕНО''), кэшировать все результаты, за исключением запросов SELECT SQL_NO_CACHE ...
|
2 |
DEMAND (``ПО ТРЕБОВАНИЮ''), кэшировать только запросы SELECT SQL_CACHE ...
|
Внутри потока (соединения) можно изменить функционирование кэша запросов по сравнению с установленным по умолчанию. Синтаксис следующий:
SQL_QUERY_CACHE_TYPE = OFF | ON | DEMAND SQL_QUERY_CACHE_TYPE = 0 | 1 | 2
Опция | Описание |
0 или OFF | Результаты не кэшировать и не извлекать. |
1 или ON | Кэшировать все результаты за исключением запросов SELECT SQL_NO_CACHE ...
|
2 или DEMAND | Кэшировать только запросы SELECT SQL_CACHE ...
|
По умолчанию выражение SQL_QUERY_CACHE_TYPE
зависит от величины переменной query_cache_startup_type
, установленной при создании данного потока.
Add your own comment.