Поиск с Select ... Like '%str%' (db: Mysql)

Тема в разделе "SQL", создана пользователем KudesniK, 13 ноя 2005.

Статус темы:
Закрыта.
  1. KudesniK

    KudesniK Гость

    У меня есть таблица с большим количеством записей. Необходимо сделать следующее
    SELECT *
    FROM table_name
    WHERE field LIKE '%text%'

    Я так понимаю что индексы оно не использует. Но вот странно что первый поиск проходит за секунд 40 а то и больше а последующие другие поиски с различным значением "text" уже мгновенные, Но через некоторое врея все повторяется (видимо таблица выгружается). А как сделать, что бы этот запрос всегда быстро отрабатывал (т.е. таблица не выгружалась). Какой параметр в mysql за это отвечает.

    Вот мой my.ini:
    Код (Text):
    [client]
    port=3306
    default-character-set=cp1251

    [mysqld]
    port=3306
    basedir="<...>"
    datadir="<...>"
    default-character-set=cp1251
    default-storage-engine=MYISAM
    max_connections=100
    query_cache_size=48M
    table_cache=256
    tmp_table_size=48M
    thread_cache_size=8

    myisam_max_sort_file_size=100G
    myisam_max_extra_sort_file_size=100G
    myisam_sort_buffer_size=52M
    key_buffer_size=72M
    read_buffer_size=64K
    read_rnd_buffer_size=256K

    sort_buffer_size=256K
     
  2. Barmutik

    Barmutik Гость

    Судя по всему никакой... это нормальный процесс когда в память поднимаются страницы данных к которым Вы обращаетесь в текущий момент, а неиспользуемые удаляются....
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей