如果用到了子查询作为参数,那么使用EXISTS代替IN,EXISTS速度更快的原因:EXISTS可以用到索引,加快查找速度,并且EXISTS只要查到一行数据满足条件就会终止查询,不会进行全表扫描如果经常对某一个字段进行排序的话,那么请建立索引用EXISTS代替DISTINCT,可以避免排序能在WHERE子句中过滤的条件不要写到HAVING子句中,因为先通过WHERE进行过滤之后,会减少数据的行数,...
原创 2021-11-08 10:14:55
76阅读
分析表:MyISAM、InnoDB、BDBmysql> analyze table payment; #MyISAM 使用myisamchk -a+----------------+---------+----------+----------+| Table          | Op      | Msg_t
原创 2016-04-29 15:31:09
498阅读
 这篇文章,是对SQL常用查询优化法则的总结,值得细看SQL 作为关系型数据库的标准语言,是分析师必不可少的技能之一。SQL 本身并不难学,编写查询语句也很容易,但是想要编写出能够高效运行的查询语句却有一定的难度。查询优化是一个复杂的工程,涉及从硬件到参数配置、不同数据库的解析器、优化器实现、SQL 语句的执行顺序、索引以及统计信息的采集等,甚至应用程序和系统的整体架构。本文介绍几个关键
转载 2022-04-19 11:23:05
200阅读
点击“终码一生”,关注,置顶公众号每日技术干货,第一时间送达​这篇文章,是对SQL常用查询优化法则的总结,值得细看SQL 作为关系型数据库的标准语言,是分析师必不可少的技能之一。SQL 本身并不难学,编写查询语句也很容易,但是想要编写出能够高效运行的查询语句却有一定的难度。查询优化是一个复杂的工程,涉及从硬件到参数配置、不同数据库的解析器、优化器实现、SQL 语句的执行顺序、索引以及统计信息的采集
原创 2021-12-20 14:48:17
506阅读
这篇文章,是对SQL常用查询优化法则的总结,值得细看SQL 作为关系型数据库的标准语言,是分析师必不可少的技能之一。SQL 本身并不难学,编写查询语句也很容易,但是想要编写出能够高效运行的查询语句却有一定的难度。查询优化是一个复杂的工程,涉及从硬件到参数配置、不同数据库的解析器、优化器实现、SQL 语句的执行顺序、索引以及统计信息的采集等,甚至应用程序和系统的整体架构。本文介绍几个关键法则,可以帮
原创 2023-10-12 11:58:14
106阅读
1> 问题描述 某客户集团反馈某模块崩溃,导致系统异常,系统无法登陆; 关闭该模块浏览模块后,系统才恢复正常问题重复出现多次。 处理过程 协助排查问题优化过程中发现查询该模块的一个长SQL导致性能问题,其中引发问题的主要原因在下图中的部分SQL片段: 以上SQL中workflowtye在流程表中存放
原创 2021-05-28 16:44:34
432阅读
Oracle 2005 年出了一个 30 多页的小册子,《Query Optimization in Oracle Database10g Release 2》,介绍了常见的优化器技术。我是做 SQL 执行的,优化部分只了解皮毛,从没有系统学习过。本系列逐个学习和介绍,自我提升,也帮助他人。第一篇,改写最简单的改写是 view merging。create view MY_VIEW as SELE
原创 2023-06-15 15:22:32
99阅读
openGauss 是一个高性能的关系型数据库管理系统。它不仅继承了传统数据库的稳定性和可靠性,还通过一系列创新技术提升据库性能优化是一个永恒的话题。...
面试过程中,面试官有极高的频率会问道数据库的优化,SQL语句的优化,网上关于SQL优化的教程很多,但是鱼目混杂,显得有些杂乱不堪。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。 本文主要来自于互联网,进行内容的筛选优化再度整合而来,感觉好的话推荐给更多的人,让更
转载 2019-09-11 15:17:00
28阅读
2评论
各位DBA兄弟们,你们是不是也跟我一样,每天被一堆SQL搞得头晕眼花?作为一名在数据库运维行业搬砖多年的DBA,我每天都和SQL语句打交道。这些SQL就像是一群调皮捣蛋的小孩子,搞的数据库一会儿这里慢,一会儿那里卡,真是令人头大。以前,我每天都要花至少2个小时去一条一条地分析这些SQL, 从大量的TopSQL中找出需要优化的部分,就像大海捞针一样,费时费力。而且,每次给领导提交优化报告,领导常常会
原创 9月前
126阅读
接到客户诉求说一条SQL长时间运行不出结果,让给看看怎么回事,SQL不复杂,优化措施也不复杂,但是要想SQL达到最优状态,也是需要经过一番考量并做出选择的。下面借实验还原一下此SQL优化过程。
原创 2023-03-31 10:22:52
656阅读
基本配置你需要经常察看以下3个配置项。不然,可能很快就会出问题。innodb_buffer_pool_size:这是你安装完InnoDB后第一个应该设置的选项。缓冲池是数据和索引缓存的地方:这个值越大越好,这能保证你在大多数的读取操作时使用的是内存而不是硬盘。典型的值是5-6GB(8GB内存),20-25GB(32GB内存),100-120GB(128GB内存)。innodb_log_file_s
转载 精选 2015-09-29 17:48:59
384阅读
1.避免使用 select *  会进行全表扫描,不能有效利用索引  增大了数据库服务器的负担  增加了数据库与应用程序之间的网络IO开销2.比较运算符能用 = 就不用 <>   增加索引的命中率3.知道有几条查询结果的情况下,使用 limit N   避免全表扫描4.为列选择合适的数据类型  占用空间越少越好5.将大的delete、update、insert变成多
转载 2023-11-12 20:00:23
300阅读
我的优化配置:JAVA_OPTS="-Xms16384m -Xmx16384m -Xloggc:/home/soft/8080_gc.log -Xss256k -Xmn6144m -XX:PermSize=1024m -XX:MaxPermSize=1024m -XX:SurvivorRatio=6 -XX:MaxTenuringThreshold=7 -XX:+UseConcMarkSweepG
原创 2017-05-11 15:18:55
2098阅读
公司升级了服务器的配置,内存吃紧的问题得以解决,由此想到了几个优化MySQL的简单方法。首先明确两件事,我们的业务场景是常见的高并发web服务,查询速度是重中之重。还有就是优化前一定要备份数据库,不然出问题就只能跑路了。 1.使用固态硬盘 这个优化方法毫无技术含量,完全就是花钱买性能,但是不得不说这
转载 2018-04-15 19:15:00
74阅读
2评论
 #!/bin/sh # Written by CoKiLi 2011.09.01 sleepcoki@gmail.com # GPL cat << EOF +--------------------------------------------------------------+ |         === Welcom
原创 2011-09-21 10:50:10
509阅读
1.RHEL6.2最小化安装 RHEL6.2默认安装许多用不到的软件,不仅浪费空间、增大系统开销,还会显得凌乱。所以选择最小化安装。 注意:安装步骤选择时区时不要选择“使用UTC”作为系统时钟,否则会造成无法调整时间。2.RHEL6.2配置本地yum源  配置好yum并使用yum安装软件,系统的使用会变得很轻松。 (1)通过U盘将rhel安装光盘拷贝到电脑上并挂载到/media/loca
转载 精选 2013-02-13 15:57:36
645阅读
Es优化系统参数调整如:打开文件数,关闭swap等es系统配置官网地址:https://www.elastic.co/guide/en/elasticsearch/reference/7.x/setting-system-settings.html配置es参数cluster.name:my-es-cluster#集群的名称node.master:true#参与主节点选举node.name:node
原创 精选 2021-02-01 16:27:00
1682阅读
1点赞
文章目录1. nginx 优化2. nginx 模块有哪一些3. nginx 数据算法有哪一些1.轮询(默认):2.weight:3.ip_hash:4.fair(第三方):5.url_hash(第三方):4. nginx 日志需要怎么进行切割5. nginx 怎么自定义403错误界面6. nginx 平滑重启命令是什么7. nginx 配置检查命令有哪些8. nginx 和apache 的区别
一、操作符优化 1、IN 操作符 用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格。但是用IN的SQL性能总是比较低的,从Oracle执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查询外层的表记录,如果转换成功则直接采用多个表的连接方式查询。由此可见用IN的SQL至少多了
转载 2023-12-27 13:53:50
723阅读
  • 1
  • 2
  • 3
  • 4
  • 5