Oracle OCP笔记(21)统计信息,顾问程序,警报与阀值

本文详细探讨了Oracle OCP中的统计信息收集,包括其重要性以及如何影响数据库性能。同时,介绍了顾问程序的功能,它们如何帮助优化数据库并提供性能建议。此外,还讨论了警报和阀值设置,以确保系统的稳定运行和问题预防。
摘要由CSDN通过智能技术生成

Oracle OCP笔记(21)统计信息,顾问程序,警报与阀值



一.统计信息
1.关于统计信息
    统计信息对SQL语句的性能影响巨大,优化器将使用统计信息来设计有效的执行计划。可以采用手工或自动方式来收集统计信息。如果在收集了统计信息后,性能问题依然存在,那么可以使用各种指标来探究问题的根源。
    统计与PL/SQL无关,只与SQL有关。不过,大多数PL/SQL代码都包含对SQL语句的调用。对于这些语句来说,统计信息同样非常重要。


    1.对象统计信息
    表的统计信息(显示在视图dba_tables中)
    ·表中的行数
    ·为表分配的块数(无论是否曾经被使用过)
    ·正在使用的块内的空闲空间数
    ·每行的平均长度
    ·链接行数(分割在多个块内的行,可能是行过长或存储设置不当)
    列的统计信息(显示在视图dba_tab_columns中)
    ·不同值的数目
    ·最大值和最小值
    ·NULL值的数目
    ·平均列长度
    索引的统计信息(显示在视图dba_indexes中)
    ·索引树的深度
    ·不同键值的数目
    ·聚合因子(行的自然顺序与索引顺序之间的接近程度)
    索引相关的统计信息(显示在视图index_stats中)
    ·引用现有行的索引数
    ·引用被删除行的索引数
    就维护索引的方式而言,上面这些信息很有价值。维护索引的方式为: 行被删除时,保留索引键。经过一段时间后,由于对被删除行的引用占用了大量空间,因此索引会变得低效。
    
2.手动收集统计信息
    analyze命令
    analyze table tablename compute statistics;


    dbms_stats程序包
    dbms_stats.gather_table_stats   
    dbms_stats.gather_schema_stats


    锁住统计信息
    dbms_stats.lock_table_stats
    dbms_stats.lock_schema_stats
    解锁统计信息
    dbms_stats.unlock_table_stats
    dbms_stats.unlock_schema_stats


3.控制统计信息的收集和可见性(参数statistics_level)
    select value from v$parameter where name like 'statistics_level';
    ·BASIC    -- 禁用AWR(自动工作负荷仓库)统计信息的计算,并禁用日常分析,将无法使用各种性能和调整顾问,警报系统将不起作用。
    ·TYPICAL  -- 默认值,收集数据库的自我管理和调整功能需要的所有统计信息,并将启用每天在维护窗口中运行的自动对象分析任务。
    ·ALL      -- 收集所有可能的统计信息。包括操作系统活动统计信息,以及有关SQL语句执行的非常详细的统计信息。可能对性能产生负面影响。


    自动统计信息收集任务每天在维护窗口执行此任务,维护窗口在平时晚上运行4个小时(22点开始),周六日运行20个小时(6点开始)。
    由自动任务收集的统计信息足够使用,没有必要再手工收集统计信息。




二.自动工作负荷仓库
1.关于自动工作负荷仓库(AWR)
    Oracle收集大量有关活动和性能的信息,这些统计信息收集到内存中,并由MMON后台进程定期转储到自动工作负荷仓库(AWR)。 <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值