Até onde eu sei, o conteúdo de /tmp
é excluído na reinicialização.
No entanto, no seu caso, você pode tentar alterar / adicionar a variável de ambiente TMPDIR
em:
/etc/mysql/conf.d/local.cnf
Mapei meu datadir do MySQL para um disco diferente (e maior) com 900 GB
[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
O / tmp está localizado no disco menor de 40 GB
[root@web ~]# df -h /tmp
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 40G 24G 14G 64% /
Parece que o MySQL está usando o diretório / tmp e, por causa disso, estou ficando sem espaço em disco quando tento executar grandes operações do MySQL.
Como posso alterar o /tmp
para usar também o disco maior?
Até onde eu sei, o conteúdo de /tmp
é excluído na reinicialização.
No entanto, no seu caso, você pode tentar alterar / adicionar a variável de ambiente TMPDIR
em:
/etc/mysql/conf.d/local.cnf
Altere a variável de ambiente TMPDIR para um sistema de arquivos / diretório com mais espaço em disco.
Edite o arquivo de configuração local /etc/mysql/conf.d/local.cnf
. Este arquivo contém suas alterações locais - e não será sobrescrito se você atualizar o mysql. Observe que os arquivos de configuração podem ser armazenados em um local diferente - use find para localizar o arquivo de configuração padrão my.cnf. Normalmente local.cnf seria mantido no mesmo diretório.
sudo find / -name my.cnf # look for path of config files
Edite o local.cnf, por ex. sudo vi /etc/mysql/conf.d/local.cnf
Adicione estas linhas ao local.cnf:
[mysqld]
tmpdir = /your/newpath
Em seguida, reinicie o mysql.
Na documentação MySQL :
B.5.4.4 Where MySQL Stores Temporary Files
On Unix, MySQL uses the value of the TMPDIR environment variable as the path name of the directory in which to store temporary files. If TMPDIR is not set, MySQL uses the system default, which is usually /tmp, /var/tmp, or /usr/tmp.
Tags mysql hard-drive linux centos