十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
如果愿意自己写sql的话,可以尝试一下sql中用in,不过效率未见好到哪里去。
创新互联专业为企业提供兰陵网站建设、兰陵做网站、兰陵网站设计、兰陵网站制作等企业网站建设、网页设计与制作、兰陵企业网站模板建站服务,10年兰陵做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
这里强烈建议读写分离。用不通的数据库实例去分别处理读写。再看看磁盘 IO 性能。看看队列数据。不行就上阵列。或者单表部署单个磁盘。或者读写在不同的磁盘进行。当然用缓存也可以。
造成你读取数据太慢的原因一般是出现在服务器上,或者说你的电脑配置低运行这些代码需要多花一点时间;也有可能是你的数据库数据太多了,一次性读取出来会很卡,这个时候你就需要分页显示这些数据了。
优化数据库字段类型。(能用其他的尽量不要用VCHAR)建立储存过程。
1尽量使用数字型字段,若只含数值信息的字段尽量不要设计为字符型,这会降低查询和连接的性能,并会增加存储开销。这是因为引擎在处理查询和连接时会 逐个比较字符串中每一个字符,而对于数字型而言只需要比较一次就够了。
硬件,是不是抗不住,软件,mysql是不是没有设置好,数据库设计方面等,语言,SQL语句写法。下面是一些优化技巧。对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。
我遇到的问题就是,mysql的全文索引特别慢,无论是查询还是删除,删除127条用207秒。数据量是10W,每条记录的字段不是很大。整个数据库一共230M。
你用的是mysql什么版本,看的是很久前的资料。 你遇到的问题,我之前遇到过,以前也认为myisam读更快 在大数据量情况下innodb更快,但是必须加内存。 你可以复制个表,改过来试试。
MYSQL认为必须检查的用来返回请求数据的行数Extra关于MYSQL如何解析查询的额外信息。
1、你的查询需求中,最常用的where字段是什么,然后在数据表中给这个字段建立索引。多表查询、嵌套查询的话,就得优化sql了,这个得具体情况具体分析了。
2、PHP的查询缺省模式是缓冲模式。也就是说,查询数据结果会一次全部提取到内存里供PHP程序处理。这样给了PHP程序额外的功能,比如说,计算行数,将指针指向某一行等。更重要的是程序可以对数据集反复进行二次查询和过滤等操作。
3、避免使用!=或<>、IS NULL或IS NOT NULL、IN ,NOT IN等这样的操作符。优化SQL语句(让SQL语句更合理一些)。优化数据库字段类型。(能用其他的尽量不要用VCHAR)建立储存过程。
4、没必要一次性查出100W条。每次请求3-5W数据update,分页用递归。控制好变量内存,不要内存溢出。