如何监控oracle的索引是否使用
很多软件开发过程中,没有注意合理规划索引,造成一个表上有N多个索引,为后续的维护和优化带来麻烦。因此有时候需要监控已有的索引是否在使用,oracle提供了监控索引是否使用的工具,很简单,简要介绍一下。
首先,我们如果是监控一个表上的所有索引,可以这样先生成监控的命令:
SQL> select 'alter index '||index_name||' monitoring usage;' from user_indexes where table_name=upper('mpaymentappl');
'ALTERINDEX'||INDEX_NAME||'MONITORINGUSAGE;'
------------------------------------------------------------
alter index IDX_MPAYMENTAPPL_BCODE monitoring usage;
alter index MPAYMENTAPPL_FLAGS monitoring usage;
alter index MPAYMENTAPPL_PAICODE monitoring usage;
然后执行这些脚本就开始监控了,监控信息可通过V$OBJECT_USAGE查看,通过used列可知道这个索引是否被使用:
SQL> select * from V$OBJECT_USAGE;
INDEX_NAME TABLE_NAME MON USE START_MONITORING END_MONITORING
------------------------------ ------------------------------ --- --- ------------------- -------------------
IDX_MPAYMENTAPPL_BCODE MPAYMENTAPPL YES NO 03/24/2010 10:55:27
MPAYMENTAPPL_FLAGS MPAYMENTAPPL YES NO 03/24/2010 10:55:27
MPAYMENTAPPL_PAICODE MPAYMENTAPPL YES NO 03/24/2010 10:55:28
取消监控某个索引:
SQL> ALTER INDEX MPAYMENTAPPL_FLAGS NOMONITORING USAGE;
Index altered.
SQL> select * from V$OBJECT_USAGE
2 /
INDEX_NAME TABLE_NAME MON USE START_MONITORING END_MONITORING
------------------------------ ------------------------------ --- --- ------------------- -------------------
IDX_MPAYMENTAPPL_BCODE MPAYMENTAPPL YES NO 03/24/2010 10:55:27
MPAYMENTAPPL_FLAGS MPAYMENTAPPL NO NO 03/24/2010 10:55:27 03/24/2010 10:57:19
MPAYMENTAPPL_PAICODE MPAYMENTAPPL YES NO 03/24/2010 10:55:28
那些持续关注一定时间没有使用的索引就可以删除了,以提高DML操作效率
实际工作中,我们可以选择暂时禁用索引功能,来提高数据表插入、修改效率。因为,在索引起作用的情况下,大量数据的DML操作会带来很多的索引更新和Redo Log的生成。这在批量数据加载的时候是不需要的。所以,可以暂时禁用索引。
转载于:https://www.cnblogs.com/sopost/archive/2011/03/09/2190040.html
如何监控oracle的索引是否使用相关推荐
- lepus监控oracle数据库_实用脚本一键监控oracle数据库索引使用状况
概述 我们在维护业务系统时,可能会建立很多索引,那么这些索引的使用到底怎么样,是否有些索引一直都没有用到过,那么oracle 是如何监控索引的使用状况,是否可以清除它们? 监控索引 一般有两种方式: ...
- oracle 索引_分享三个Oracle数据库索引监控脚本,值得收藏
概述 我们在维护业务系统时,可能会建立很多索引,那么这些索引的使用到底怎么样,是否有些索引一直都没有用到过,那么oracle 是如何监控索引的使用状况,是否可以清除它们? 监控索引 一般有两种方式: ...
- 如何监控ORACLE索引使用与否
在数据库管理与维护中,我们总会遇到一个问题:我们创建的索引是否会被某些SQL语句使用呢?如果创建的某个索引是Unused Indexes,尤其是没有合理规划索引或管理不规范的系统,可能建立了N个索引, ...
- 监控Oracle性能的SQL
监控Oracle性能的SQL 1. 监控事例的等待 select event,sum(decode(wait_Time,0,0,1)) "Prev", sum(dec ...
- Oracle——03索引
Oracle--03索引 Oracle 索引 详解 创建Oracle索引的标准语法: CREATE INDEX 索引名 ON 表名 (列名) TABLESPACE 表空间名; 创建唯一索引: ...
- oracle 清理索引空间,Oracle删除索引规范
1.背景概述 近期应用升级上线过程中,存在删除业务表索引的变更操作,且因删除索引导致次日业务高峰时期,数据库响应缓慢的情况,经定位是缺失索引导致.与用户沟通,虽然变更中删除索引的需求很少,但也存在此类 ...
- 监控Oracle数据库
介绍了DBA每天在监控Oracle数据库方面的职责,讲述了如何通过shell脚本来完成这些重复的监控工作.本文首先回顾了一些DBA常用的Unix命令,以及解释了如何通过Unix Cron来定时执行DB ...
- 监控Oracle数据库的常用shell脚本
文章介绍了DBA每天在监控Oracle数据库方面的职责,讲述了如何通过shell脚本来完成这些重复的监控工作.本文首先回顾了一些DBA常用的Unix命令,以及解释了如何通过Unix Cron来定时执行 ...
- zabbix企业应用之监控oracle
本次介绍如何使用zabbix监控oracle,主要使用pyora这个python脚本来监控,具体地址可以参考https://github.com/bicofino/Pyora 我的zabbix版本为2 ...
最新文章
- 【Vue】宝塔面板服务器配置Vue项目
- html加载完显示图片,js图片未加载完显示loading效果
- 迁移到php7,迁移PHP版本到PHP7
- dhcp计算机毕业论文,基于线程池机制的高性能DHCP服务器研究与实现-计算机科学与技术专业毕业论文.docx...
- NaN Inf(OC)
- java 使用jasper_使用Jasper Reports以Java创建报告
- 单片机c语言参考文献最新,[2018年最新整理]10个单片机C语言实例.doc
- 『Balancing Act 树的重心』
- python添加模块
- [原创]二维数组的动态分配及参数传递
- codeforces#253 D - Andrey and Problem里的数学知识
- ×××S 2008 引用自定义程序集
- Github 单文件快速下载 -- 使用 DownGit
- 创业者2012必看十大文章(10)
- 高等数学(第七版)同济大学 总习题四(前半部分) 个人解答
- 坐标转换程序:(1)四参数和七参数的计算
- 三维建模软件查看器Rocky-view(免费)
- 电脑C盘满了清理方法,电脑内存不足怎么解决
- ECCV2020Workshop-PAN-270k参数量SISR网络 | Efficient Image Super-Resolution Using Pixel Attention
- 采用直线逼近方式的圆弧插补
热门文章
- 计算机安全流量填充,计算机安全.doc
- yum install php72w,yum 安装 php72w-pecl-imagick 报错
- 【转载】美国煤层气发展史
- Wscript.Shell 对象详细介绍(编写.VBS)
- rpm常用命令集合2
- 白板随手一画,嗖嗖变成代码
- 程序员社区骂战:不满政治正确,LLVM元老宣布退出
- 机器这次击败人之后,争论一直没平息 | SQuAD风云
- AI何时能懂环境会沟通?别急,这个“你说我画”小游戏开了个好头 | 论文
- WebSocket的实现原理?为什么可以实现持久连接?