oracle 查询索引缺失,Oracle 11g 分析出那些表缺失索引

本文介绍了如何在Oracle 11g中通过SQL查询找出那些表缺失索引,重点是使用DBMS_XPLAN和V$SQL_PLAN视图来分析执行计划,特别是全表扫描操作。通过示例展示了如何收集和显示执行计划,以确定GG_ASSET_AUDIT表可能需要添加索引。
摘要由CSDN通过智能技术生成

在设计、开发阶段我们会加索引,不过难免保证在运维阶段索引加全了。此时就需要把执行计划中带有全表扫描的SQL都找出来。

sqlplus TEST/TEST@10.10.15.25  --数据库的用户名和密码,每个实例上都要运行

set serveroutput on size 100000

spool d:/result.txt

set pagesize 200

set linesize 800

declare

cursor c_cursor is select hash_value,CHILD_NUMBER,SQL_FULLTEXT from(

select  /*+use_hash(s,v)*/  s.hash_value,s.CHILD_NUMBER,s.SQL_FULLTEXT,

row_number() over(partition by s.HASH_VALUE order by null) rn

from v$sql s,v$sql_plan v

where s.SQL_ID =v.SQL_ID

and v.operation = 'TABLE ACCESS'

and v.OPTIONS = 'FULL'

and s.CHILD_NUMBER =0

and v.OBJECT_OWNER in ('SPROC1','SPROC2','SPROC3')) where rn=1;

c_row c_cursor%rowtype;

TYPE t_arry_plan IS VARRAY(1000) OF VARCHAR2(200);

array_plan t_arry_plan;

begin

DB

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值