首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Oracle SQL调优记录

一、前言 本博客只记录工作中的一次oracle sql调优记录,因为数据量过多导致的查询缓慢,一方面是因为业务太过繁杂,关联了太多表。面对复杂的业务场景,确实有些情况是需要关联很多表的。...二、注意点 对于SQL调优,不要马上就说加索引什么的,加索引不一定就能解决问题的,加错索引,反而会导致查询变慢,注意加索引的同时也会影响数据库写数据的速度。...三、Oracle执行计划 对于SQL调优,可以通过Oracle的执行计划来分析。oracle的执行计划确实是对sql进行分析的一种很好的方法。 下面介绍一下oracle的执行计划。...当然这些都是根据实践业务场景来调优的。我遇到的业务场景是适合的。因为关联的表数据量很大。...方面的博客都放在:https://blog.csdn.net/u014427391/article/category/6112832 然后推荐一本oracle调优书籍《收获,不止SQL优化》一书

1.1K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    数据库调优笔记

    慢查询 处理步骤 判断慢查询产生(CPU负载、IO读写、执行时间) 打开慢查询日志或使用分析工具(mysqldumpslow等) 选择调优方式 性能调优 应用程序优化 减少数据库连接次数,空间换时间 拆分复杂语句...> MOT IN NOT LIKE)和%开头的like(前导模糊查询)–会导致全表扫描 避免大表使用JOIN查询和子查询–会产生临时表,消耗较多CPU和内存,影响数据库性能 确定只有一条记录返回,可以加上...类型转换等会导致无法命中索引 表结构优化 字段类型优化,使用合适的类型(字段长度,避免 text,使用 not null) 合理使用索引,去除无用索引 读写分离和分库分表 避免使用触发器,存储过程、外键等 硬件和数据库配置优化

    85721

    Oracle SQL调优之分区表

    这就是分区可以简化大型数据库对象的可管理性的方式。...(5)如果将关键表和索引划分为多个分区以减少维护窗口,恢复时间和故障影响,则分区可提高任务关键型数据库的可用性。 (6)无需对应用程序进行任何修改即可实现分区。...三、分区表分类 分区类型:分区分为范围分区、列表分区、HASH分区、组合分区四种,图来自Oracle官方网站 ?...partition p1 with table range_part_tab including indexs update global indexs; 五、分区相关查询 分区相关查询 (1)查询数据库所有分区表的信息...user_indexes b where a.index_name = b.index_name and a.status = 'UNUSABLE'; 附录:分区表索引失效的操作 ps:表格来自《收获,不止SQL调优

    1.2K10

    Oracle 如何使用 SQLT 进行 SQL 调优

    如何使用 SQLT 进行 SQL 调优 SQLT:SQLTXPLAIN,也被称为 SQLT,是由 Oracle 服务器技术中心- ST CoE 提供的工具。...SQL 连接到数据库并收集执行计划、基于成本的Optimizer CBO 统计信息、模式对象元数据、性能统计信息、配置参数和影响所分析SQL的性能的类似元素。...SQLT main methods 连接到数据库并收集执行计划、基于成本的优化器 CBO 统计信息、架构对象元数据、性能统计信息、配置参数以及影响正在分析的一个 SQL 的性能的其他元素。...如下示例,列出了数据库中非默认的优化器参数及参数值。 SQLHC 这里顺便说一句比 SQLT 更简洁的 sqlhc 工具,这个工具收集的信息也很全面,值得大家尝试,研读。...执行方法:sqlplus / as sysdba SQL> @/home/oracle/tmp/sqlhc.sql T 9a4tv1dduu9u4 或者 SQL> @/home/oracle/tmp/sqlhc.sql

    95920

    Greenplum数据库快速调优

    Greenplum数据库快速调优 目录 Greenplum数据库快速调优 1 目录 1 第一节 集群规划中影响性能的原因 2 1、 架构设计 2 2、服务器配置 3 3、Segment 实例数量...3 第二节 数据库性能优化内容 4 1、内存管理 4 2、资源队列的内存管理 4 3、 资源队列 5 4、资源组 5 5、资源组与资源队列的区别 6 6、表储存 6 7、储存模式及对比 7 8、数据加载...’::regclass); 5、膨胀处理 1)、HEAP 表 - vacuum vacuum 回收不了超过空闲映射空间的过期时 - vacuum 不能回收时,用一下方法: vacuum full 调优参数...2、数据库运行慢 1、问题案例 数据正常使用时,突然性能慢,用户体验很卡,正常的简单查询耗时长 2、原因分析 1)、内存不足,使用swap交换空间 2)、CPU负载高 3)、磁盘IO繁忙 3、快速定位...根据节点服务器占用系统资源最大的进程,回溯查询到数据库进程 3、两段事务锁 1、问题案例 1)、执行删除表命令时,一直在执行中,链接数据库查询并没有锁 2)、永久不处理后,wal文件堆积 drop table

    2.8K51

    Oracle sql调优(网络优化知识点)

    ,然后我们经常说全表扫描慢是针对数据量很多的情况,数据量少的话,全表扫描并不慢的,不过随着数据量越多,高水位线也就越高,也就是说需要扫描的数据库越多,自然扫描所需要的IO越多,时间也越多 注意:数据量越多...ROWID是一个伪列,数据库里并没有这个列,它是数据库查询过程中获取的一个物理地址,用于表示数据对应的行数。...数据库来说,B树索引是最常见的了,下面给出B树索引的图,图来自《基于Oracle的SQL优化》一书: 对于B树索引,分成两种类型的数据块,一种是索引分支块,另外一种是索引叶子块,索引根块是一种特殊的索引分支块...的优化器 2.1 优化器简介 优化器(Optimizer):优化器是Oracle数据库内置的一个核心子系统,负责解析SQL,Oracle优化器是Oracle系统的一个核心组件,其目的是按照一定的原则来获取目标...按照硬编码在数据库的一系列规则来决定SQL的执行计划,简称是RBO 3.2.2 RBO缺陷 RBO在oracle10后官方就不建议用,因为RBO并不支持oracle一些性能比较好的功能特性,也不会根据表的数据量等等获取执行计划

    72400

    Oracle SQL调优系列之AWRDD报告简介

    我写的SQL调优专栏:https://blog.csdn.net/u014427391/article/category/8679315 整体分析调优工具 AWR:关注数据库的整体性能的报告; ASH:...数据库中的等待事件与哪些SQL具体对应的报告; ADDM:oracle给出的一些建议 AWRDD:Oracle针对不同时段的性能对比报告 AWRSQRPT:oracle获取统计信息与执行计划 不同场景对应工具...局部分析调优工具: explain plan for set autotrace on statistics_level=all 直接通过sql_id获取 10046 trace awrrpt.sql...的执行计划进行sql调优,但是对于整个系统来说,你可以知道哪些sql比较耗时?...数据库可以使用sqlplus或者plsql developer客户端软件 sqlplus 使用 可以使用sqlplus工具登录 进入数据库 sqlplus / as sysdba 查看用户 show

    49820

    Oracle SQL调优系列之AWR报告简介

    load_profile 2.3 AWR之efficiency percentages 2.4 AWR之top 10 events 2.5 AWR之SQL Statistics 一、AWE报告生成步骤 对于SQL调优...,局部SQL,我们可以直接使用执行计划等直接调优,而对于整个系统来说?...整体分析调优工具 AWR:关注数据库的整体性能的报告; ASH:数据库中的等待事件与哪些SQL具体对应的报告; ADDM:oracle给出的一些建议 AWRDD:Oracle针对不同时段的性能对比报告...AWRSQRPT:oracle获取统计信息与执行计划 不同场景对应工具 局部分析调优工具: explain plan for set autotrace on statistics_level=all...从几个维度列举了系统执行比较慢的SQL,可以点击,然后拿SQL去调优,调优SQL可以用执行计划看看 对于AWR的性能指标还有很多,本博客是看了《收获,不止SQL优化》一书的笔记,这里只简单介绍一些比较重要的指标

    1.6K21

    Oracle SQL调优系列之AWRSQRPT报告简介

    我写的SQL调优专栏:https://blog.csdn.net/u014427391/article/category/8679315 整体分析调优工具 AWR:关注数据库的整体性能的报告; ASH:...数据库中的等待事件与哪些SQL具体对应的报告; ADDM:oracle给出的一些建议 AWRDD:Oracle针对不同时段的性能对比报告 AWRSQRPT:oracle获取统计信息与执行计划 不同场景对应工具...局部分析调优工具: explain plan for set autotrace on statistics_level=all 直接通过sql_id获取 10046 trace awrrpt.sql...的执行计划进行sql调优,但是对于整个系统来说,你可以知道哪些sql比较耗时?...对于Oracle数据库可以使用sqlplus或者plsql developer客户端软件 sqlplus 使用 可以使用sqlplus工具登录 进入数据库 sqlplus / as sysdba

    73220

    Oracle SQL调优系列之cursor学习笔记

    文章目录 一、oracle库缓存 1.1、库缓存简介 1.2、相关概念 1.3、库缓存结构 1.4、sql执行过程简介 二、oracle cursor 2.1、cursor分类 2.2、shared cursor...2.3、session cursor 2.4、sql执行过程 最近在看《基于oracle的sql优化》一书,并做了笔记 一、oracle库缓存 1.1、库缓存简介 介绍oracle cursor...(游标)之前先,介绍一下oracle的库缓存,Oracle库缓存(Library Cache)是SGA中的一块内存区域,它的主要作用是缓存刚刚执行过的SQL语句或者PL/SQL语句(比如存储过程、函数、...库缓存的结构,图来自《基于Oracle的SQL优化》一书: 库缓存是由一组Hash Buckets组成的,Hash Buckets里面存储的hash值相同的库缓存对象句柄,而Hash Buckets...二、oracle cursor 2.1、cursor分类 oracle的cursor其实就是库缓存对象,Oracle中的cursor分为两种,一种是shared cursor,另外一种是session

    57120

    SQL调优之性能调优

    针对专门操作符的调优 前面,讲的是关于查询条件的一般规则,在这一节中,将讨论如何使用专门的操作符来改进 SQL 代码的性能。...与 (AND) 数据库系统按着从左到右的顺序来解析一个系列由 AND 连接的表达式,但是 Oracle 却是个例外,它是从右向左地解析表达式。...WHERE column2 = 'B' AND column1 = 'A' 这里假设 column2 = 'B'的概率较低,如果是 Oracle 数据库的话,只需将规则反过来用即可。...以上是作者对如何提高 SQL 性能的一些总结,这些规则并一定在所有的数据库系统上都能带来性能的提高,但是它们一定不会对数据库的性能带来下降,所以掌握并使用这些规则可以对数据库 应用程序的开发有所帮助。...本文总结的是一些 SQL 性能调优的比较初级的方面,SQL 调优还包括 Order by,Group by 以及 Index 等等。

    1.8K30

    Oracle SQL调优系列之经验小归纳

    文章目录 一、写作前言介绍 二、调优注意点 三、Oracle执行计划 四、调优方法记录 4.1 强制索引使用 4.2 基数反馈机制 4.3 oracle开窗函数 一、写作前言介绍 本博客只记录工作中的一次...oracle sql调优记录,因为数据量过多导致的查询缓慢,一方面是因为业务太过繁杂,关联了太多表。...不过因为本人不做DBA工作,是做开发的,所以本博客只能参考,不能当做规范 二、调优注意点 对于SQL调优,不要马上就说加索引什么的,加索引不一定就能解决问题的,加错索引,反而会导致查询变慢,注意加索引的同时也会影响数据库写数据的速度...三、Oracle执行计划 对于SQL调优,可以通过Oracle的执行计划来分析。oracle的执行计划确实是对sql进行分析的一种很好的方法。 下面介绍一下oracle的执行计划。...调优方面的博客都放在:https://blog.csdn.net/u014427391/category_8679315.html 然后推荐一本oracle调优书籍《收获,不止SQL优化》一书

    45720
    领券