一.11g中auto stats gather job被集成到了auto task中。

SQL> select client_name,status from DBA_AUTOTASK_CLIENT;

CLIENT_NAME                                                      STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection                                  ENABLED
auto space advisor                                               ENABLED
sql tuning advisor                         ENABLED

SQl>select client_name,operation_name
  from dba_autotask_operation t;
------------------    ---------------------------
CLIENT_NAME           OPERATION_NAME
auto optimizer stats  collection auto optimizer stats job
auto space advisor   auto space advisor job
sql tuning advisor   automatic sql tuning task

可以通过以上视图进行名字和状态的查看。

禁用的时候,使用存储过程逐个禁用。

SQL> begin
    DBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'sql tuning advisor',
    operation => NULL,
    window_name => NULL);
    end;
    /

PL/SQL procedure successfully completed.

SQL> select client_name,status from DBA_AUTOTASK_CLIENT;

CLIENT_NAME                                                      STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection                                  DISABLED
auto space advisor                                               ENABLED
sql tuning advisor                                               DISABLED

二.在10G版本中,自动收集的job名字为:GATHER_STATS_JOB,默认情况下该job每天晚上10点执行.

1.查看该job的状态以及执行情况

Select a.Enabled, Last_Start_Date, Next_Run_Date
  From Dba_Scheduler_Jobs a
 Where Job_Name = 'GATHER_STATS_JOB';

2.关闭和启动该job

方法一:
exec dbms_scheduler.disable('SYS.GATHER_STATS_JOB');
exec dbms_scheduler.enable('SYS.GATHER_STATS_JOB');

方法二:
alter system set "_optimizer_autostats_job"=false scope=spfile;
alter system set "_optimizer_autostats_job"=true scope=spfile;

三.其他建议

对于数据量很大的库,一般是建议关闭掉自动收集的任务,通过自己手工写存储过程,再把存储过程加入JOB中去收集统计信息,统计信息的收集是根据表的大小来自己定义收集的采样率以及其他的选项。

可以参考如下的存储过程:

DECLARE
  CURSOR STALE_TABLE IS
    SELECT OWNER,
           SEGMENT_NAME,
           CASE
             WHEN SIZE_GB < 0.5 THEN

              THEN

               THEN

               THEN

              THEN

           END AS PERCENT,
            AS DEGREE
      FROM (SELECT OWNER,
                   SEGMENT_NAME,
                     ) SIZE_GB
              FROM DBA_SEGMENTS
             WHERE OWNER = 'SCOTT'
               AND SEGMENT_NAME IN
                   (SELECT /*+ UNNEST */ DISTINCT TABLE_NAME
                      FROM DBA_TAB_STATISTICS
                     WHERE (LAST_ANALYZED IS NULL OR STALE_STATS = 'YES')
                       AND OWNER = 'SCOTT')
             GROUP BY OWNER, SEGMENT_NAME);
BEGIN
  DBMS_STATS.FLUSH_DATABASE_MONITORING_INFO;
  FOR STALE IN STALE_TABLE LOOP
    DBMS_STATS.GATHER_TABLE_STATS(OWNNAME          => STALE.OWNER,
                                  TABNAME          => STALE.SEGMENT_NAME,
                                  ESTIMATE_PERCENT => STALE.PERCENT,
                                  METHOD_OPT       => 'for all columns size skewonly',
                                  DEGREE           ,
                                  GRANULARITY      => 'ALL',
                                  CASCADE          => TRUE);
  END LOOP;
END;

上述的存储过程,先定义了表的大小所对应的采样率,然后通过查询DBA_SEGMENTS得到表的大小,再通过DBMS_STATS.GATHER_TABLE_STATS去收集统计信息。

最新文章

  1. Git学习笔记
  2. word-spacing汉字不起作用的解决方法
  3. 开源的EtherCAT Master简介
  4. Android IOS WebRTC 音视频开发总结(六九)-- qq视频通话都是p2p,我们还怕啥?
  5. @gettrcname.sql
  6. 设置JVM参数,查看堆大小
  7. angularJs中图表功能(有集成框架)-angular-flot
  8. Matlab使用心得
  9. JavaScript的DOM操作(一)
  10. iOS 四种延时的方法
  11. CSS设置一行文字,超出部分自动隐藏
  12. Android性能优化之被忽视的优化点
  13. BZOJ 4326 运输计划
  14. js扩展运算符(spread)三个点(...)
  15. nginx配置文件详解(三)
  16. 1. 在config.ini文件中加入dm.park.time=1,会使uap中的tomcat启动加快
  17. ImportError: No module named etree.ElementTree问题解决方法
  18. [SQLSERVER] 把TransactionLog截断
  19. [转]wget 下载整个网站,或者特定目录
  20. Oracle导入excel数据快速方法

热门文章

  1. 【Nginx】nginx 代理 Haproxy 怎么设置?
  2. C++ STL 的实现:
  3. shiro错误总结
  4. QL Server 实用脚本
  5. 【leetcode】First Missing Positive(hard) ☆
  6. 【C语言】文件
  7. You know元音字母吗?
  8. NIS域配置详解
  9. rsync.conf详解
  10. jQuery取复选框值、下拉列表里面的属性值、取单选按钮的属性值、全选按钮、JSON存储、*去空格