阅 读 文 章

Oracle9i如何监视索引并清除监视信息

[来源:网上转载 (http://exam.21tx.com) | 作者:网友(网络收集) | 时间:2007-08-25 | 浏览:人次 ]

  对于DML操作来说,索引对于数据库是一个性能负担.如果索引没有被有效的使用,那么其存在性就值得从新考虑.
  
  1. 从Oracle9i开始,Oracle允许你监视索引的使用:
  
  SQL> connect scott/tiger@connerConnected to Oracle9i Enterprise Edition Release 9.2.0.4.0 Connected as scottSQL> select index_name from user_indexes;INDEX_NAME------------------------------PK_DEPTPK_EMP开始监视pk_dept索引:SQL> alter index pk_dept monitoring usage;Index altered在此过程中,如果查询使用索引,将会记录下来:SQL> select * from dept where deptno=10;DEPTNO DNAME LOC------ -------------- ------------- 10 ACCOUNTING NEW YORK停止监视:SQL> alter index pk_dept nomonitoring usage;Index altered查询索引使用情况,YES表示在监视过程中索引被使用到:SQL> select * from v$object_usage;INDEX_NAME TABLE_NAME MONITORING USED START_MONITORING END_MONITORING----------------- ------------------ ---------- ---- ------------------- -------------------PK_DEPT DEPT NO YES 10/28/2004 10:55:19 10/28/2004 10:55:47SQL>
  
  2.Oracle9i的Bug
  
  在9205之前,如果你不慎监控了SYS.I_OBJAUTH1索引,并且不幸在重起数据库之前没有停止它,那么你的数据库将会无法启动,并且不会给出任何错误信息。
  
  以下这条简单的语句可以轻易再现这个问题:
  
  'ALTER INDEX SYS.I_OBJAUTH1 MONITORING USAGE'
  
  如果你有了足够好的备份(严重警告,请不要拿你的生产数据库进行测试),你可以尝试一下:
  
  [oracle@jumper oradata]$ sqlplus "/ as sysdba"
  
  SQL*Plus: Release 9.2.0.4.0 - Production>
论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 监视 信息 清除 索引 如何 使用 :SQL 如果 数据库 pk_dept

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.