mysql 报错 :The table xxx is full
############################################
现象:
用户执行的sql语句报错: Cause: java.sql.SQLException: The table '/home/work/mysql_3306//tmp/#sql117f0c_db7113_a4' is full
原因:参数internal_tmp_mem_storage_engine是默认值TempTable,当临时表大小超过 temptable_max_ram+temptable_use_mmap=1G+1G=2GB的设置时,sql报错。
mysql> show variables like '%temptable_max%'; +--------------------+------------+ | Variable_name | Value | +--------------------+------------+ | temptable_max_mmap | 1073741824 | | temptable_max_ram | 1073741824 | +--------------------+------------+ 2 rows in set (0.00 sec) mysql>
mysql> show variables like '%internal%'; +---------------------------------+-----------+ | Variable_name | Value | +---------------------------------+-----------+ | internal_tmp_mem_storage_engine | TempTable | +---------------------------------+-----------+ 1 row in set (0.01 sec)
解决:修改参数internal_tmp_mem_storage_engine=MEMORY,当临时文件超过tmp_table_size=512MB时,使用磁盘文件,避免由于设定的内存不足而退出。
mysql> set global internal_tmp_mem_storage_engine=memory; Query OK, 0 rows affected (0.00 sec)
在/home/work/mysql_3306/conf/my.cnf配置文件中添加
[mysqld] internal_tmp_mem_storage_engine=memory
################################
igoodful@qq.com
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
2020-06-15 diff
2018-06-15 039-冒泡排序
2018-06-15 038-选择排序