解决SQLException: Temporary file write failure. Mysql Temporary file write failure.
Posted 星丶空LTL
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决SQLException: Temporary file write failure. Mysql Temporary file write failure.相关的知识,希望对你有一定的参考价值。
描述:
项目查询数据库时,报java.sql.SQLException: Temporary file write failure.
把相应sql语句放到数据库中查询,也报Temporary file write failure.
分析:
由于都报了Temporary file write failure.估计原因在mysql数据库上。
我的sql语句中使用了join操作,对于数据量少的操作,查询无异常,而数据量大的join操作就报异常。
估计是数据量过大的join操作超过了join缓存限制,使用到了临时文件,而临时文件还是太小,导致Temporary file write failure.
解决:
先查询数据库join操作的缓存大小
show VARIABLES like '%join_buffer%'
默认 256k(262144)
感觉有点小,修改为10M(10x1024x1024)
set global join_buffer_size = 10*1024*1024;
注意:这里用 global 而不是 session,
global是设置全局系统变量,设置之后程序连接数据库,也是使用这个数值(10M)。
session是设置会话系统变量,当次会话有效,程序连接数据库还是使用默认值(256k)。
再次查看join的缓存大小
再次执行含有join操作的sql,能正常查询~~~
(如果还报Temporary file write failure,再设置大一点,楼主之前设置1M也不行,直到10M才可以)
以上是关于解决SQLException: Temporary file write failure. Mysql Temporary file write failure.的主要内容,如果未能解决你的问题,请参考以下文章
解决SQLException: Temporary file write failure. Mysql Temporary file write failure.
Temporary failure in name resolutionf的解决方法
mycat启动报错UnknownHostException(Temporary failure in name resolution)解决方法
ORA-02195:尝试创建的PERMANENT对象在TEMPORARY表空间中 怎么解决 具体步骤
记一次文件上传报错解决过程The temporary upload location is not vali
Ubuntu 20.04 server不能ping,提示“Temporary failure in name resolution”的解决方法