Mysql cache on ramdisk

Запись создана марта 18, 2011

Выносим кеш и временные таблицы mysql в память. для этого подключим ram-диск:

mount -t tmpfs -o size=1024M tmpfs /tmp/mysql/
echo 'tmpfs                   /tmp/mysql              tmpfs   size=1024M,mode=01770,uid=100,gid=101,noatime 0 0' >> /etc/fstab

В конфиге Mysql /etc/my.cnf добавляем директиву в блоке [mysqld]:

tmpdir=/tmp/mysql/

И перезапускаем mysql сервер.

увидеть создаваемые временные файлы можно с помощью lsof

lsof /tmp | grep mysql

Кстати, в тот же рамдиск можно запихать кеш eAccelerator/xCache/squid.

» Запись из раздела Несортированное | 5 комментариев

Комментарии



5 комментариев to “Mysql cache on ramdisk”

  1. NetSpider on марта 25, 2011 4:56

    только в ядре нужен модуль tmpfs.

    а можно так:

    /sbin/mdconfig -a -t swap -s 1024m
    /sbin/newfs /dev/md0
    /sbin/mount -o async /dev/md0 /tmp/mysql
    chmod 777 /tmp/mysql

    м?

  2. Scarj on сентября 9, 2011 11:35

    Хм.. Пригодиться.
    Как альтернативная идея: поставить видеокарту с большим объемом оперативки 2 ГБ или 4, в ее памяти сделайте ram-диск, и положите на этот диск своп.
    Работать, кстати, будет очень быстро.

  3. Артур Шакиров on ноября 17, 2011 9:51

    расскажи те мне как рамбиск в памяти видеокарты создать, для начала. Как поймете что написали бред, сообщите

  4. WST on июля 2, 2012 18:06

    Ну вообще-то память видеокарты можно использовать напрямую, в том числе выделять блоки и монтировать их как файловую систему. Даже сам делал когда-то.

  5. Программист on октября 27, 2015 11:48

    А что будет, если памяти будет выделено 2 гигабайта, а надо будет запихнуть во временную директорию таблицу размером 4 гигабайта?




Ответить