Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

0

积分

1

好友

2

主题
1#
发表于 2013-3-6 21:02:38 | 查看: 4301| 回复: 7
oracle 11g索引的维护个人认为包括以下几方面,有些疑问希望大家能帮忙补充下,谢谢
1,删除无效或重复的索引;
   无效索引通过monitor2天,如无使用,则经确认后删除,疑问:这里只能监控到索引是否使用,使用次数有没办法监控到?
2,缺失索引的创建;
   这个暂时想到的是通过AWR TOP SQL和SQL MONITOR发现一个解决一个,疑问:oracle系统有没视图或方法统计可能缺失的索引?
3,索引的调整
   检查是否有组合索引和单列索引重复,监控一段时间判断是否可以减少个别索引;
4,索引的定期重建
   BLEVEL>=4的重建,索引碎片严重的重建。
   analyze index xxxx validate structure;分析每个索引,当然这里可以写个过程批量分析,但这个SQL会锁表,对于应用频繁的索引,不方便批量处理。请教:对于索引的定期维护,大家有没有一些好的脚本或建议。
2#
发表于 2013-3-6 21:24:52
疑问:这里只能监控到索引是否使用,使用次数有没办法监控到?

==> 可以 挖AWR 执行计划+SQL历史的 , 基本可以得到大概的 使用次数

回复 只看该作者 道具 举报

3#
发表于 2013-3-6 21:25:16
这个暂时想到的是通过AWR TOP SQL和SQL MONITOR发现一个解决一个,疑问:oracle系统有没视图或方法统计可能缺失的索引?

==》sql tuning advisor + sql access advisor可以满足你的大致需求

回复 只看该作者 道具 举报

4#
发表于 2013-3-6 21:27:27
检查是否有组合索引和单列索引重复,监控一段时间判断是否可以减少个别索引;

==》参照你的问题1,找出单列索引 的使用情况,比较在单列索引确实情况下的性能, 例如可以把单列索引invisible 来测试实际情况

回复 只看该作者 道具 举报

5#
发表于 2013-3-6 21:29:15
BLEVEL>=4的重建,索引碎片严重的重建。

==> 对于oltp 不建议rebuild ,因为rebuild会导致索引降级, 一般我建议做shrink compact/ coalesce

BLEVEL是一个CBO相关的指标,所以dbms_stats 自动作业时是会收集bLEVEL信息的。

SQL> select distinct blevel from dba_indexes;

    BLEVEL
----------
         1

         2
         0

回复 只看该作者 道具 举报

6#
发表于 2013-3-6 21:44:27
谢谢Maclean,EM的指导中心是经常用的,我想了解Oracle索引维护的常用模式,比如如何批量找出需要重建的索引,之前根据analyze index xxxx validate structure整理了个过程获取索引碎片情况,但因为业务频繁表无法获取到锁,过程处理一半索引就出错,需要把剩下的重新统计,如此反复多次才能完成,不方便整理。所以想咨询下大家一般都如何对待这个问题

回复 只看该作者 道具 举报

7#
发表于 2013-3-6 22:19:11
Maclean Liu(刘相兵 发表于 2013-3-6 21:29
BLEVEL>=4的重建,索引碎片严重的重建。

==> 对于oltp 不建议rebuild ,因为rebuild会导致索引降级, 一般 ...

请教下 这里的"索引降级" 是指索引树的高度降低吗?

回复 只看该作者 道具 举报

8#
发表于 2013-3-7 10:01:05

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-27 16:03 , Processed in 0.048138 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569