Повысить производительность сайта и ускорить его работу поможет перенос временных файлов MySQL на RAM-диск. В результате переноса работа с временными таблицами БД будет производиться через оперативную память вместо жесткого диска, и MySQL начнет работать быстрее.
Настройка выполняется следующим образом:
- Создайте папку для хранения временных файлов, например, /var/lib/mysql/tmp:
mkdir /var/lib/mysql/tmp
- Измените владельца папки и группа на mysql:
chown mysql:mysql /var/lib/mysql/tmp
- Определите идентификатор пользователя (uid) и группы (gid) MySQL:
id mysql
- Откройте файл /etc/fstab:
nano /etc/fstab
- Добавьте строку с указанием полученных выше значений:
tmpfs /var/lib/mysql/tmp tmpfs rw,gid=27,uid=27,size=1G,nr_inodes=10k,mode=0700 0 0
В параметре size указывается объем памяти, который будет отдан под временные файлы MySQL. Его необходимо установить в зависимости от количества имеющейся оперативной памяти на сервере.
- Смонтируйте новый tmpfs-раздел:
mount /var/lib/mysql/tmp
- Откройте файл конфигурации MySQL /etc/mysql/my.cnf/:
nano /etc/mysql/my.cnf/
- Добавьте строку:
tmpdir=/var/lib/mysql/tmp
- Перейзапустите MySQL:
systemctl restart mysqld