现在是用phpExcel导出大概需要十分钟多,而且内存报错...

有没有什么办法可以让大量数据导出可以更快呢?

...忘了说因为是一些数据客户需要用到的,所以要用excel格式

回复内容:

现在是用phpExcel导出大概需要十分钟多,而且内存报错...

有没有什么办法可以让大量数据导出可以更快呢?

...忘了说因为是一些数据客户需要用到的,所以要用excel格式

首先应该明确问题场景:

1.这个导出10w数据是用户的功能还是后台或者系统内的功能,如果是用户使用的功能,那么可能PHP很难处理,因为要考虑用户体验问题,那么这个功能可能需要使用第三方服务或者用其他扩展来做。但是如果不是用户使用,而是系统人员或者内部人使用。则办法有很多种。

分步骤分析问题

1.从mysql数据库导出10w条数据,2,将10万天数据导出。

首先看下,mysql数据库查询10w条的时间:

我刚刚测试了一下,我的11万数据大概导了205s。因为机器的问题所以每个人的都不一样。但是可以明确一点,这个时间不快。如果PHP的话,一般默认连接时间是30s,就会有第一个问题,超时的问题。这个很好解决

2.用PHP将10w条数据导出。10w条数据就会有第二个问题,内存不够的问题。处理10w条数据比较慢

建议:

1.如@悲惨的大爷的方案,将10条分次导出,由于是SELECT,所以不会占用MYSQL太多资源,可以多线程查询SQL。

但这只能解决查询的问题,查询倒是快了,这个可以优化第一个步骤的时间,但是用PHP导出10条数据的问题还是在,因为是需要把10w条数据导出成一个excel。针对这点可以使用csv.这会比phpexcel快不少,

2.如果数据量太多或者应用场景比较频繁可以做一个服务。

分多个文件导出.

比如现在要导出10w 条数据,那么可以分10次导出,一次1w 条.

可以用多进程来处理.

我猜你是查数据库一次取了十万条,然后导出的。这样非常占用内存。

你可以试试分页取十次,每次取一万条导出。最后把导出的文件合并。

用mysql自带的mysqldump不好么

如果一定要excel 可以odbc连接到数据库后导出到excel,具体操作搜索下

我导出500000一点问题都没的,记着释放内存

直接对数据库操作,mysql导出数据,写个别的桌面程序来转换?

CSV 没有一点压力

用csv格式啊,不要用phpexcel

用csv。千万不要用phpexcel。这种东西读取速度特别的慢。我是吃过亏的。

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

mysql 十万条 输出_mysql - php导出十多万条数据有没有办法更快?相关推荐

  1. mysql+date+范围+性能_MySQL性能优化的最佳20+条经验

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...

  2. mysql 性能 比较好_MySQL性能优化的最佳20+条经验

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数 ...

  3. mysql+性能+计算列_MYSQL性能优化的最佳20+条经验

    当你查询表的有些时候,你已经知道结果只会有一条结果,但因为你可能需要去fetch游标,或是你也许会去检查返回的记录数. 在这种情况下,加上 LIMIT 1 可以增加性能.这样一样,MySQL数据库引擎 ...

  4. mysql time转换输出_MySQL将timediff输出转换为日,时,分,秒格式?

    要了解MySQL将timediff输出转换为日,时,分和秒格式,您需要在CONCAT()MySQL中使用. 让我们创建一个表.创建表的查询如下:mysql> create table conve ...

  5. mysql性能优化的最佳20条经验_MySQL性能优化的最佳20+条经验

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...

  6. mysql数据库导入方法_MySQL导入导出数据库方法介绍

    我们都知道不管是在于windows系统还是在linux环境中MySQL数据库的导入分为有两种1) 先导出数据库SQL脚本,再导入:2) 直接拷贝数据库目录和文件. 操作方法 1,进入MySQL目录下的 ...

  7. mysql导入dat文件_MySql导入和抽取大数量级文件数据

    一.情况介绍 需要处理的文件是一个3.41G的csv格式文件,现在需要把它导入数据库,进行后续处理和分析. 二.导入数据 该文件数据量庞大,无法用excel或者editplus++之类普通软件打开,于 ...

  8. 二手车数据分析-爬取人人车二十余万条线上二手车数据

    我国汽车保有量近年来持续高速增长,二手车交易也正蓬勃发展,涌现出瓜子.优信.人人车,等大量二手车交易网站. 这次就通过在线抓取人人车发布的线上二手车数据,对目前二手车的交易情况进行分析. 使用工具: ...

  9. mysql 十万条 输出_MySQL一次性插入十万条数据

    在写sql语句的时候,总是报错,原来是''单引号没有加 拼接语句的后半部分,之前仅仅是简单的""双引号拼接,报一些莫名其妙的错误,一直说sql语句有问题,但是看不出来,原来是''单 ...

最新文章

  1. 获得所有已打开的IE浏览器窗口中的访问地址
  2. 图像处理:镜头频率(衍射极限) 和 相机采样:显微镜的采样定理
  3. GraalVM Internship Program
  4. 基于.NetCore3.1搭建项目系列 —— 使用Swagger导出文档 (番外篇)
  5. sql CHECK ,UNIQUE 约束(mysql)
  6. 公认音质好的耳机品牌_什么品牌蓝牙耳机音质比较好?2020五款HIFI音质蓝牙耳机推荐...
  7. Keil | 解决Keil与Source Insight4.0配合使用时,代码与注释位置(乱码)不一样的问题
  8. HTML5 中的新特性:
  9. 终于来了!Pyston v2.0 发布,速度比 Python 快 20%!
  10. Linux部署安装JDK和Tomcat
  11. html输入输出文件,学习如何用 C 语言来进行文件输入输出操作
  12. 泛微oa系统手机服务器,泛微OA系统移动客服,把客户的所有事宜装入手机
  13. python自动添加微信好友_Python实现微信自动通过好友申请并发送加群链接!
  14. 智点软件定制**服装工厂衣服加工计件工资软件的方案
  15. linux系统安装文网卫士,360主机卫士 linux版的安装/使用/卸载 方法
  16. Android亮度自动调节
  17. 高德百度地图如何获取附近小区酒店银行等?
  18. Orcad与PADS交互设计技巧一
  19. 有哪些办法可以将ip地址更换?
  20. 全国大学建模与计算机应用竞赛,2014年全国大学生数学建模与计算机应用竞赛报名通知...

热门文章

  1. poi3.9之读写2010 word/excel/ppt
  2. 全国职业院校技能大赛信息安全管理与评估赛题一
  3. 使用cesium使用飞行漫游功能以及原地平滑转向
  4. 锂电池充放电管理芯片和输出芯片
  5. 如何使电脑网速加快,去掉系统的带宽限制
  6. 【Dive into Deep Learning / 动手学深度学习】第二章 - 第六节:概率
  7. 工作流引擎 Activiti 万字详细入门
  8. Android 中Uri.parse()的作用
  9. 新款iPhone为何不支持5G?小编总结出3点,库克真的是用心良苦
  10. linux中的.so文件和.a文件