日期:2014-05-17  浏览次数:20434 次

php将excel数据导入到mysql优化
我的需求是这样的
1、从客户端上传
2、每张excel的数据量一般为3万条以上
我的问题是:一次性导入这么多数据到mysql中?




------解决方案--------------------
一次性导入可能不行,分批导入。
------解决方案--------------------

超过限制大小就不能导入了

可以考虑转换成sql脚本导入
------解决方案--------------------
每张有3万多,应该一次转不完吧,记忆中好像记录多导致转换失败的帖子看过几回,不过自己没测试过.
------解决方案--------------------
这个,这个 我真不会,没听说过,还能这样,坐等求解~~
------解决方案--------------------
这个要看表的结构以及真是数据什么样了,要是有好几个打字段,那么你练成sql语句的话非常大,这样需要调整sql配置文件中语句长度和php所使用的内存限制,如果现实中的字段都是比较小的,那么一般情况是没什么问题的,以上所说是针对将所有数据连成一个sql的情况,如果单一sql执行的话那么就比较灵活了,不过那样效率低一些
------解决方案--------------------
这个问题就很明显了, 把EXECL文件存到磁盘里, 然后使用MQ将任务异步交给消费者进程, 让消费者进程线下慢慢的读EXECL,慢慢的插入到数据库里,等完成了数据库里标记一下就完事了。

直接让PHP跑这个是不可能的,你问个会编程的人都不会告诉你这么幼稚的答案。
------解决方案--------------------
个人觉得可以转换成Csv,然后一次读取一定的行数,循环读取