https://blog.csdn.net/lukeUnique/article/details/79331779 https://mauro-pagano.com/2014/10/27/when-the-going-gets-tough-the-tough-get-going-aka-sqlt-xplore/ When upgrading a database sometime you find that one or more SQLs run slower because of a new…
背景介绍 在升级到12.1.0.2.0数据库版本后,在使用12c中引入的自适应特性默认配置的情况下,可能引起SQL性能的下降. 问题现象升级到12.1.0.2.0后,SQL语句性能可能出现下降. 影响的产品及版本Oracle 12.1.0.2.0 原因和触发条件Oracle 12.1.0.2版本上,增加了2个自适应特性:自适应计划和自适应统计信息,这两个特性默认都是开启的,通过一个参数optimizer_adaptive_features控制,某些场景下可能会导致SQL语句性能问题发生: 自适应…
某局的预生产系统一条sql语句20分钟执行完,上线以后2个小时没执行出来,在预生产执行计划是hash join在生产是nested loop,通过awr基表wri$_optstat_tab_history查询表的历史统计信息,发现表的行数有时为0,有时为200万,在行数为0时走的嵌套循环,在200万时走的hash join 20分钟就执行完:对表做完大批量操做后收集统计信息…
• 确定使用SQL 性能分析器的优点 • 描述SQL 性能分析器工作流阶段 • 使用SQL 性能分析器确定数据库更改所带来的性能改进 SQL 性能分析器:概览 • 11g 的新增功能 • 目标用户:DBA.QA.应用程序开发人员 • 帮助预测系统更改对SQL 工作量响应时间的影响 • 建立不同版本的SQL 工作量性能(即SQL 执行计划和 执行统计信息) • 以串行方式执行SQL(不考虑并发性) • 分析性能差异 • 提供对单个SQL 的细粒度性能分析 • 与SQL 优化指导集成在一起以优化回归…
这段时间做一个SQL性能优化的案例分析, 整理了一下过往的案例,发现一个比较有意思的,拿出来给大家分享. 这个项目是我在项目开展2期的时候才加入的, 之前一期是个金融内部信息门户, 里面有个功能是收集各个上市公司的财报, 然后做各种分析, 数据图表展示, 使用的人数并不多, 仅百人左右. 2期打算面向行外用户, 刚开始预计同时在线人数不超过50, 就以50访问用户/秒的性能测试, 结果在把1期的图表类数据展示响应基本在5分钟左右, 属于严重不可用, 说说我们的服务器配置, 有2台网站前端承载用户…
在应用的的开发过程中,由于初期数据量小,开发人员写 SQL 语句时更重视功能上的实现,但是当应用系统正式上线后,随着生产数据量的急剧增长,很多 SQL 语句开始逐渐显露出性能问题,对生产的影响也越来越大,此时这些有问题的 SQL 语句就成为整个系统性能的瓶颈,因此我们必须要对它们进行优化,本章将详细介绍在 MySQL 中优化 SQL 语句的方法. 当面对一个有 SQL 性能问题的数据库时,我们应该从何处入手来进行系统的分析,使得能够尽快定位问题 SQL 并尽快解决问题. 查看sql执行频率 My…
Mysql高级操作 索引概述: 索引是高效获取数据的数据结构 索引结构: B+Tree() Hash(不支持范围查询,精准匹配效率极高) 树的区别: 二叉树:可能产生不平衡,顺序数据可能会出现链表结构 平衡二叉树:插入需要自旋,性能根据层级而定,性能不稳定 b+tree: 主键聚簇叶子节点存放数据,非叶子节点存放索引, 二级索引非叶子节点存放索引,叶子节点存放主键 索引优缺点: 优点: 大大加快查询速度 使用分组和排序时候可以显著减少分组和排序时间 唯一索引可以保证字段唯一 可以加速表与表之间的…
如何查看执行SQL的耗时 使用show profiles分析sql性能. Show profiles是5.0.37之后添加的,要想使用此功能,要确保版本在5.0.37之后. 查看数据库版本 mysql> select version(); profile默认是不打开的 mysql> show profiles;Empty set (0.02 sec) mysql> show variables like "%pro%";可以看到profiling 默认是OFF的. 开…
Fiddler fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据. 使用Fiddler无论对开发还是测试来说,在诊断分析问题时,都有很大的帮助. 下载地址:http://www.telerik.com/download/fiddler 工作原理和使用说明可参考:http://www.cnblogs.com/TankXiao/archive/2012/02/06/2337728.html 当然我们如果…
原文:[MS SQL]通过执行计划来分析SQL性能 如何知道一句SQL语句的执行效率呢,只知道下面3种: 1.通过SQL语句执行时磁盘的活动量(IO)信息来分析:SET STATISTICS IO ON (开启) / SET STATISTICS IO OFF (关闭) 2.通过SQL语句执行时语法分析.编译以及执行所消耗的时间:SET STATISTICS TIME ON (开启) / SET STATISTICS TIME OFF (关闭) 3.通过执行计划查看:Ctrl + L -----…