1

Я сопоставил свой каталог данных MySQL с другим (и большим) диском объемом 900 ГБ.

[root@web ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/xvda1       40G   24G   14G  64% /
    tmpfs           7.4G     0  7.4G   0% /dev/shm
    /dev/xvdb1      886G  658G  184G  79% /mnt/cbsvolume1

/ Tmp находится на меньшем диске 40 ГБ

[root@web ~]# df -h /tmp
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1       40G   24G   14G  64% /

Похоже, что MySQL использует каталог /tmp, и из-за этого у меня иногда не хватает места на диске при попытке выполнить большие операции MySQL.

Как я могу изменить /tmp чтобы также использовать больший диск?

2 ответа2

1

Насколько я знаю, содержимое /tmp удаляется при перезагрузке.

Однако, в вашем случае, вы можете попробовать изменить / добавить переменную среды TMPDIR в:

/etc/mysql/conf.d/local.cnf
1

Измените переменную среды TMPDIR на файловую систему / каталог с большим дисковым пространством.

Отредактируйте локальный файл конфигурации /etc/mysql/conf.d/local.cnf . Этот файл содержит ваши локальные изменения - и не будет перезаписан, если вы обновите MySQL. Обратите внимание, что файлы конфигурации могут храниться в другом месте - используйте find, чтобы найти файл конфигурации по умолчанию my.cnf. Обычно local.cnf хранится в том же каталоге.

sudo find / -name my.cnf     # look for path of config files

Отредактируйте local.cnf, например, sudo vi /etc/mysql/conf.d/local.cnf

Добавьте эти строки в local.cnf:

[mysqld]
tmpdir = /your/newpath

Затем перезапустите MySQL.

Из документации MySQL :

B.5.4.4 Где MySQL хранит временные файлы

В Unix MySQL использует значение переменной среды TMPDIR в качестве пути к каталогу, в котором хранятся временные файлы. Если TMPDIR не задан, MySQL использует системное значение по умолчанию, обычно это /tmp, /var /tmp или /usr /tmp.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .