Mysql临时文件目录控制(优化项之一)
2018-02-07 15:45
323 查看
查看mysql的log-error日志发现如下错误:
ERROR 3 (HY000): Error writing file '/tmp/MYbEd05t' (Errcode: 28)
这是由于mysql运行sql时会产生临时文件,这个临时文件大小取决于sql语句和表的大小,当存放临时文件的分区“/”大小不足的时候会出现上述错误。这时候需要更改临时文件目录的位置到空间足够的分区下,步骤如下:
1.首先找到临时文件目录位置,在mysql命令行模式下输入:
show global variables like '%tmpdir%';
2.确认该位置下的分区空间是否可以释放出足够的空间,或者更改其临时文件目录:
set global tmpdir = '/data/mysqltemp';
3.接下来还需要修改mysql的配置文件my.cnf,在其中修改或者[mysqld]区块下新增如下配置:
tmpdir=/data/mysqltemp
4.再次执行步骤1,确认是否修改成功
5.最后给新增的临时文件目录授予可写权限,确保能够正确写入:
chmod a+w /data/mysqltemp
最后若是仍未生效,可以在不影响业务运行条件下尝试重启该mysql服务,对新部署mysql的服务器也应该尽早把临时文件目录更改至空间富余的分区下,避免日后不必要的麻烦。
ERROR 3 (HY000): Error writing file '/tmp/MYbEd05t' (Errcode: 28)
这是由于mysql运行sql时会产生临时文件,这个临时文件大小取决于sql语句和表的大小,当存放临时文件的分区“/”大小不足的时候会出现上述错误。这时候需要更改临时文件目录的位置到空间足够的分区下,步骤如下:
1.首先找到临时文件目录位置,在mysql命令行模式下输入:
show global variables like '%tmpdir%';
2.确认该位置下的分区空间是否可以释放出足够的空间,或者更改其临时文件目录:
set global tmpdir = '/data/mysqltemp';
3.接下来还需要修改mysql的配置文件my.cnf,在其中修改或者[mysqld]区块下新增如下配置:
tmpdir=/data/mysqltemp
4.再次执行步骤1,确认是否修改成功
5.最后给新增的临时文件目录授予可写权限,确保能够正确写入:
chmod a+w /data/mysqltemp
最后若是仍未生效,可以在不影响业务运行条件下尝试重启该mysql服务,对新部署mysql的服务器也应该尽早把临时文件目录更改至空间富余的分区下,避免日后不必要的麻烦。
相关文章推荐
- MySQL性能优化之路---修改配置文件my.cnf
- Windows 7安装解压版MySQL 5.6(不包含配置文件优化)
- 修改MySQL默认的数据文件存储目录
- Golang学习之标准库io/ioutil,读取文件,生成临时目录/文件
- vb-复制ie临时文件夹下所有mp3文件到指定目录,并且将utf8编码转换过来
- apache commons fileupload 手记删除临时文件及优化速度
- session.save_path目录大量session临时文件带来的服务器效率问题
- 转:设置Loadrunner负载机临时文件目录
- 自动删除VC项目目录下临时文件
- Java清理临时目录文件Demo(一)
- mysql优化: 内存表和临时表
- C#改动文件或目录的权限,为指定用户、用户组加入全然控制权限
- linux下ibdata文件过大,需要迁移mysql目录到外挂磁盘
- MSSQL Server 2008 数据库安装失败:Reporting Services目录临时数据库文件存在
- apache 配置文件目录访问权限控制
- 设置 ASP.NET 存储当前应用程序的临时文件(生成的源、编译了的程序集等)的目录的物理路径。
- js控制本地文件及目录的方法
- bat删除当前目录及其所有子目录中的VC临时文件
- springmvc上传临时文件目录配置
- 黄聪:MYSQL5.6缓存性能优化my.ini文件配置方案