加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

分享两个实用脚本 一键查看索引历史使用情况

发布时间:2019-08-27 19:24:28 所属栏目:MySql教程 来源:波波说运维
导读:假设这么一个场景,有一张表建了很多索引,我们可以怎么通过观察索引历史使用记录,来看是不是可以删除一些多余索引呢?下面介绍两个实用的脚本: 查看当前索引使用情况 SELECTp.object_name,p.operation,p.options,COUNT(1) FROMv$sql_planp,v$sqls WHEREp

假设这么一个场景,有一张表建了很多索引,我们可以怎么通过观察索引历史使用记录,来看是不是可以删除一些多余索引呢?下面介绍两个实用的脚本:

分享两个实用脚本--一键查看索引历史使用情况

查看当前索引使用情况

  1. SELECT p.object_name, p.operation, p.options, COUNT(1) 
  2.  FROM v$sql_plan p, v$sql s 
  3.  WHERE p.object_owner <> 'SYS' 
  4.  AND p.OBJECT_NAME in 
  5.  (select index_name 
  6.  from dba_indexes 
  7.  where table_name = 'S_SHIP_UNIT_LINE') 
  8.  AND p.sql_id = s.sql_id 
  9.  GROUP BY p.object_name, p.operation, p.options 
  10.  ORDER BY 1, 2, 3; 

分享两个实用脚本--一键查看索引历史使用情况

查看历史索引使用情况

  1. SELECT p.object_name, p.operation, p.options, COUNT(1) 
  2.  FROM dba_hist_sql_plan p, dba_hist_sqlstat s 
  3.  WHERE p.object_owner <> 'SYS' 
  4.  AND p.object_name in 
  5.  (select index_name 
  6.  from dba_indexes 
  7.  where table_name = 'S_SHIP_UNIT_LINE') 
  8.  AND p.sql_id = s.sql_id 
  9.  GROUP BY p.object_name, p.operation, p.options 
  10.  ORDER BY 1, 2, 3; 

分享两个实用脚本--一键查看索引历史使用情况

【编辑推荐】

  1. 企业使用数据库的12种姿势
  2. MongoDB数据库误删后的恢复
  3. 超详细的Oracle数据库索引创建及索引重建变更规范
  4. 深入浅出MySQL索引的那些事儿
  5. MySQL数据库目录下面的db.opt是干什么用的?
【责任编辑:赵宁宁 TEL:(010)68476606】
点赞 0

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读