今天突然收到報警短信,說是/磁盤空間使用超過閥值。經查看,發現是有很多異常的SQL,執行不了,導致一直在處理,產生了臨時占用了/tmp磁盤空間。
由於操作系統的/tmp空間有限,需要進行參數修改,將tmpdir的值路徑進行修改。
mysql> show variables like 'tmpdir'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | tmpdir | /tmp | +---------------+-------+ 1 row in set (0.00 sec) mysql> set global tmpdir = '/Data/app/mysql5.6.25/mysqltmp'; ERROR 1238 (HY000): Variable 'tmpdir' is a read only variable
只能通過配置文件進行修改了。
重啟mysql
mysql> show variables like 'tmpdir'; +---------------+--------------------------------+ | Variable_name | Value | +---------------+--------------------------------+ | tmpdir | /mysql5.6/var/tmp | +---------------+--------------------------------+ 1 row in set (0.00 sec)
問一下:但是生產環境不能重啟服務,這要怎麼搞呢?