永发信息网

mysql中怎样对大批量级的数据查询进行优化

答案:2  悬赏:0  手机版
解决时间 2021-01-04 04:31
mysql中怎样对大批量级的数据查询进行优化
最佳答案
在我们使用MySQL数据库时,比较常用也是查询,包括基本查询,关联查询,条件查询等等,对于同一个操作,SQL语句的实现有很多种写法,但是不同的写法查询的性能可能会有很大的差异。这里主要介绍下select查询优化的要点。

1. 使用慢查询日志去发现慢查询。
2. 使用执行计划去判断查询是否正常运行。
3. 总是去测试你的查询看看是否他们运行在最佳状态下 –久而久之性能总会变化。
4. 避免在整个表上使用count(*),它可能锁住整张表。
5. 使查询保持一致以便后续相似的查询可以使用查询缓存。
6. 在适当的情形下使用GROUP BY而不是DISTINCT。
7. 在WHERe, GROUP BY和ORDER BY子句中使用有索引的列。
8. 保持索引简单,不在多个索引中包含同一个列。
9. 有时候MySQL会使用错误的索引,对于这种情况使用USE INDEX。
10. 检查使用SQL_MODE=STRICT的问题。
11.对于记录数小于5的索引字段,在UNIOn的时候使用LIMIT不是是用OR.
12. 为了 避免在更新前SELECT,使用INSERT ON DUPLICATE KEY或者INSERT IGNORE ,不要用UPDATE去实现。
3. 不要使用 MAX,使用索引字段和ORDER BY子句。
14. 避免使用ORDER BY RAND().
15. LIMIT M,N实际上可以减缓查询在某些情况下,有节制地使用。
16. 在WHERe子句中使用UNIOn代替子查询。
17. 对于UPDATES(更新),使用 SHARE MODE(共享模式),以防止独占锁。
18. 在重新启动的MySQL,记得来温暖你的数据库,以确保您的数据在内存和查询速度快。
19. 使用DROP TABLE,CREATE TABLE DELETE FROM从表中删除所有数据。
20. 最小化的数据在查询你需要的数据,使用*消耗大量的时间。
21. 考虑持久连接,而不是多个连接,以减少开销。
22. 基准查询,包括使用服务器上的负载,有时一个简单的查询可以影响其他查询。
23. 当负载增加您的服务器上,使用SHOW PROCESSLIST查看慢的和有问题的查询。
24. 在开发环境中产生的镜像数据中 测试的所有可疑的查询。
来源:PHP程序员雷雪松的博客
全部回答
你好! 复杂的工程,1.优化本身的SQL,2.分表,横向纵向 如有疑问,请追问。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
什么是免单券
“种豆得豆,种瓜得瓜”,这说明自然界普遍存
森林中一棵因枯朽而倒地的树干,长满了蘑菇和
一切物体在没有受到________的时候,总保持匀
物质波是谁提出来的
------Did Eric go swimming yesterday?----.
ShedoeshershoppingonSundays.(改为否定句)S
翼神怠速时发出呜呜声是助力泵的问题还是汽油
武汉高铁站旁边二本大学有哪些
豹山居委会在什么地方啊,我要处理点事
iPad5屏幕进灰会不会是拆过的机器
以下是男女短信对话,他们俩相处有三个月了。
600年前至100年前世界都发生哪些重大自然灾害
急求 3对3篮球战术
lol虚空之眼怎么打亚索
推荐资讯
苏州口腔医院牙齿矫正要多少钱?
链家和我爱我家的待遇待遇到底怎么样
Last year, I was speaking at a gathering o
古诗文填空(10分)【小题1】,柳暗花明又一
将下列各省的省会与简称连线湖北???????????
敏力龙关于装备的困惑
乃在古文中的意思
鸿升社区居委会办公地址在什么地方?我要处理
一个三角形三个内角都不小于60°,这个三角形
投射屏幕是什么意思
为什么华为手机换了字体微信却还是默认字体
属木和水的女孩名字
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?