Справочное руководство по MySQL версии 4.0.11-gamma



              


6.9.2 Конфигурация кэша запросов


6.9.2 Конфигурация кэша запросов

Для кэша запросов в MySQL добавляется несколько системных переменных для mysqld, которые могут быть установлены в конфигурационном файле или из командной строки при запуске mysqld.

  • query_cache_limit - не кэшировать результаты, большие, чем указано (по умолчанию 1Мб).
  • query_cache_size - память, выделенная для хранения результатов старых запросов. Если равно 0, то кэширование запроса блокируется (по умолчанию).
  • query_cache_startup_type - можно установить следующие (только числовые) значения:

    Таблица 1

    Опция


    Таблица 1

    Опция

    Описание


    Описание

    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
    

    Таблица 2

    Опция


    Таблица 2

    Опция

    Описание


    Описание

    0 или OFF Результаты не кэшировать и не извлекать.
    1 или ON Кэшировать все результаты за исключением запросов SELECT SQL_NO_CACHE ...
    2 или DEMAND Кэшировать только запросы SELECT SQL_CACHE ...

    По умолчанию выражение SQL_QUERY_CACHE_TYPE зависит от величины переменной query_cache_startup_type, установленной при создании данного потока.