• 技术文章 >数据库 >mysql教程

    MySQL大数据量优化集合

    2016-06-07 16:54:55原创573

    当MySQL表记录超过30万的时候,以前写的代码报错:ldquo;select * from gll_pro_ru WHERE 1 = 1 ORDER BY id DESCselect * from

    当MySQL表记录超过30万的时候,以前写的代码报错:

    “select * from gll_pro_ru WHERE 1 = 1 ORDER BY id DESC

    select * from gll_pro_ru WHERE 1 = 1 ORDER BY id DESC limit 0,10000

    Fatal error : Allowed memory size of 16777216 bytes exhausted (tried to allocate 39 bytes) in /var/www/web-sale/class/db.class.php on line 405 ”

    405: while ($array_tmp[$i] = mysql_fetch_array($query,MYSQL_ASSOC))

    解决方法:单个PHP运行程序最大可以用16M的内存,而实际需要的要大于它,而抱错。解决方法就是改php.ini的memory_limit的值,允许程序占于更大的内存,也可以在php代码里用ini_set("memory_limit","256M");设置.

    想测试这个错也很简单,比如include一个大于2M甚至更大的文件。

    linux

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    千万级数据并发解决方案(理论+实战):点击学习

    Mysql单表千万级数据量的查询优化与性能分析

    Mysql主从原理及其在高并发系统中的应用

    上一篇:在Linux上安装MySQLServer5.0 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• MySQL存储过程高级SQL语句总结• 一起聊聊Mysql两阶段锁和死锁• 实例分析MySQL中pt-query-digest工具的使用记录• MySQL单表查询进阶总结• 一起聊聊MySQL动态SQL拼接
    1/1

    PHP中文网