大批量数据写入mysql报错 #1436 Thread stack overrun
一次插入5万条数据导致数据库报错:General error: 1436 Thread stack overrun: 246144 bytes used of a 262144 byte stack, and 16000 bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack.
方法一:
错误原因:
thread_stack太小,默认 128K。
解决方法:
windows:在这个文件中my-small.ini thread_stack 建议调整到500K
linux:在my.cnf中配置thread_stack的值可解决此问题。一般可配置为256K。
在my.cnf的[mysqld]小节中加入下面的配置:
thread_stack=256K
保存,重启mysql服务即可。
查看配置是否生效
进入mysql命令环境中,用以下命令进行查看:
show variables like '%thread%';
mysql会显示出相应的配置参数,确定thread_stack项的value是否为期望值。
解决方法二:
优化程序:将5万条数据分批量插入数据库。
由于查看系统后发现如下图:
数据库配置中thread_stack为256k所以不能一味的增大thread_stack,于是优化程序
将 $res = Db::table('test')->insertAll($savedata);
转换为:
$savedata = array_chunk($savedata,1000); //分割数组 foreach($savedata as $saveitem){$res = Db::table('test')->insertAll($saveitem); }
成功的解决了问题
大批量数据写入mysql报错 #1436 Thread stack overrun相关推荐
- 写入MySQL报错超出 max_allowed_packet 的问题
写入MySQL报错超出 max_allowed_packet 的问题. MySQL会根据配置文件会限制server接受的数据包的大小.如果写入大数据时,因为默认的配置太小,插入和更新操作会因为 max ...
- mysql sql执行错误#1436 Thread stack overrun
1.mysql调用存储过程 call proc1() 时报错: Thread stack overrun: 6656 bytes used of a 8496 byte stack, and 128 ...
- sqoop从hdfs上导出数据到MySQL报错:ClassNotFoundException:allclo
Sqoop操作前提:关闭防火墙+开启集群保证其正常. !!如果第一次输入命令失败,我建议再试一次,手动输入不要直接粘贴. 1.Exception:找不到 class allclo 百度了很久才找到解决 ...
- Spark写入MySQL报错乱码+报错
1.美图 1.背景 /*** 测试点:测试写入到mysql 指定编码方式* 测试数据:* 1,1,梁川川* 测试结果:* 同时写入mysql成功* 1. 不指定编码方式 会乱码 ?characterE ...
- 【操作经验】Mysql如何加载导入大批量数据,解决报错ERROR 3948 (42000)
前言:新装mysql,遇到ERROR 3948 (42000):Loading local data is disabled; this must be enabled on both the cli ...
- scrapy mysql 报错_scrapy爬数据存mysql报错
最近学习python,遇到一个奇葩问题,跪求高手解答 这是数据直接存的json文件 存mysql就会报如下错误 pipeline代码如下: from twisted.enterprise import ...
- Mybatis插入数据报错:java.sql.SQLException: Thread stack overrun
插入数据控制台报错:Thread stack overrun WM_MATERIAL detail:Thread stack overrun: 13224 bytes used of a 131072 ...
- Python连接mysql,插入数据时不报错,但是没有插入进去
Python连接mysql,插入数据时不报错,但是没有插入进去在connect方法中,设置 autocommit =True conn=pymysql.connect(host=host_db,use ...
- mysql修改路径报错_mysql修改数据存储路径报错处理
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' 解决?: >>> vim ...
最新文章
- iso镜像文件烧写到U盘
- 在预测心脏病和中风这件事上,AI又超过了人类医生(附论文)
- HDU 1180 诡异的楼梯
- 【原创】民航业——软件项目管理经验点滴
- JS 时间和时间戳相互转换
- Swift傻傻分不清楚系列(一)常量与变量
- crmeb pc端模板下载_PC端人人影视下载速度如何提高
- 求一批整数中出现最多的个位数字_(43)C++面试之从1到n整数中1出现的次数
- 文件从头开始读函数_如何从头开始编写自己的Promisify函数
- 金蝶kis记账王使用前要准备哪些资料
- Atitit 提升团队开发效率项目进度的一些大的流程方向attilax总结
- 虚拟机专用win7系统_手机上运行win系统!不是远程桌面!
- es文件搜索不到win7服务器,ES文件浏览器Win7局域网共享错误解决方案
- 简约至上设计书读后感
- 程序员必修课-颈椎问题的预防
- 【风马一族_Python】 决策树
- java 四舍六入五成双_EXCEL实现四舍六入五成双修约规则的方法
- 阿里巴巴提示:手动创建线程效果更好
- 2.4 设计评选优秀教师和学生的程序,其类结构如图 12.5 所示。当输入一系列教师 或学生的记录后,将优秀学生及教师的姓名列出来。 图 12.5 类结构 类 base char name[8]; 含
- 测试测量(2)-继电器基础介绍