本文为个人笔记,仅供参考,希望对您的疑问有所帮助。欢迎转载,转载请注明出处。谢谢!
-----------------------------------------------------------------------------------------------
错误重现:Incorrect key file for table '/tmp/#sql_bd2_0.MYI'; try to repair it
当mysql的临时文件大小设置太小,或者由于并发量太大导致临时文件存放的目录空间大小不够时都会报这个错误。"incorrect key file for the table '/tmp/#sql....';try to repair it"
一般的tmp目录的权限比较特别是drwxrwxrwt 就是1777
表示任何人都可以在此目录拥有写权限但是不能删除别人拥有的文件。
d:指的是目录
t:sticky bit,设置了粘住位
具体修改临时表目录的步骤为:
1) 查看法语站当前磁盘空间使用情况,建议将临时表存放目录设置在/var下。
[root@wholesale /]# mkdir /var/tmp
[root@wholesale /]# chmod 777 /var/tmp/
2) my.cnf中[mysqld]下增加:
tmpdir=/var/tmp
3) 重启mysql服务 service mysqld restart 重启
4) 查看mysql错误日志情况,看是否报错。
5) 进入mysql查看当前的tmpdir情况,确认是否修改完成
show variables like 'tmpdir';