启用oracle 11g自动收集统计信息

今天接到朋友数据库一个case,在DBCA建库时,把自动收集统计信息的选项去掉了,数据库运行半年没有收集过统计信息,现在要启用方法如下:

exec DBMS_AUTO_TASK_ADMIN.ENABLE();

exec DBMS_AUTO_TASK_ADMIN.ENABLE(client_name => ‘auto optimizer stats collection‘,operation =>‘auto optimizer stats job‘,window_name=> null);

exec DBMS_AUTO_TASK_ADMIN.ENABLE(client_name => ‘auto optimizer stats collection‘,operation => NULL,window_name => NULL);

select window_name,

window_next_time,

optimizer_stats,

aa.WINDOW_ACTIVE,

aa.SEGMENT_ADVISOR,

aa.AUTOTASK_STATUS,

aa.OPTIMIZER_STATS

from dba_autotask_window_clients aa

order by window_next_time

启用oracle 11g自动收集统计信息

时间: 2024-10-26 03:33:10

启用oracle 11g自动收集统计信息的相关文章

[Oracle] 11G自动收集统计信息

在11g中,默认自动收集统计信息的时间为晚上10点(周一到周五,4个小时),早上6点(周六,周日,20个小时),如下所示: select a.window_name, a.repeat_interval,a.duration from dba_scheduler_windows a, dba_scheduler_wingroup_members b where a.window_name = b.window_name and b.window_group_name = 'MAINTENANCE

Oracle之自动收集统计信息

一.Oracle 11g 在Oracle的11g版本中提供了统计数据自动收集的功能.在部署安装11g Oracle软件过程中,其中有一个步骤便是提示是否启动这个功能(默认是启用这个功能). 在这里介绍一下怎么将该功能启用与禁用: 1.查看自动收集统计信息的任务及状态: SQL> select client_name,status from dba_autotask_client; CLIENT_NAME STATUS ---------------------------------------

Oracle 11g 之自动收集统计信息

在Oracle的11g版本中提供了统计数据自动收集的功能.在部署安装11g Oracle软件过程中,其中有一个步骤便是提示是否启动这个功能(默认是启用这个功能). 1.查看自动收集统计信息的任务及状态: SQL> select client_name,status from dba_autotask_client; CLIENT_NAME STATUS ---------------------------------------------------------------- -------

oracle 12c 关闭统计信息收集和启用统计信息收集

oracle 12c 关闭统计信息收集和启用统计信息收集 --关闭统计信息 col client_name for a60 select client_name,status from DBA_AUTOTASK_CLIENT; CLIENT_NAME STATUS ------------------------------------------------------------ ---------------- auto optimizer stats collection ENABLED

Oracle 11g系统自动收集统计信息的一些知识

---11g的是 周一到周五 22:00-2:00 周六周日 6:00-4:00 SELECT w.window_name, w.repeat_interval, w.duration, w.enabled FROM dba_autotask_window_clients c, dba_scheduler_windows w WHERE c.window_name = w.window_name AND c.optimizer_stats = 'ENABLED'; WINDOW_NAME    

oracle表的统计信息完全正确,执行计划无故改变。原厂人员如是回复

就像在电话里提到的那样,Oracle内部的优化器是根据一系列的内部算法基于表上的统计信息来产生执行计划的.对于特别复杂的SQL语句,Oracle的优化器有一定几率不能得到最优的执行计划(因为机器代码实际上是比较死板的,虽然得到的执行计划按照内部的算法来看是比较快的,但是实际上这个执行计划可能在实际执行中比较慢).我们现在碰到的就是这种情况,虽然表的统计信息是准的,但恰恰优化器在基于这个统计信息使用内部算法得到的执行计划是不优化的一这是优化器的固有限制.这时候就需要DBA/Oracle Suppo

Oracle 分区表的统计信息实例

ORACLE的统计信息在执行SQL的过程中扮演着非常重要的作用,而且ORACLE在表的各个层次都会有不同的统计信息,通过这些统计信息来描述表的,列的各种各样的统计信息.下面通过一个复合分区表来说明一些常见的和不常见的统计信息. 搭建测试用例 --创建表. SQL> create table test partition by range(object_id) subpartition by hash(object_type) subpartitions 4 (partition p1 value

Oracle 锁定临时表统计信息

全局临时表的统计信息是不能被收集的,如果被收集,它的统计信息肯定为0,会造成执行计划不准,所以要锁定它的统计信息,禁止系统自动收集. --先解锁表的统计信息,然后删除表的统计信息,最后锁住表的统计信息 declare v_sql varchar2(500); cursor rowList1 is select'begin dbms_stats.unlock_table_stats(user,''' || table_name || '''); end;' from user_tables s w

Oracle扩展的统计信息

我们在收集列的统计信息与直方图时,往往都是对某一列的收集.当谓词使用多个相关列时,会导致约束条件的冗余.这几个相关的列也被称作关联列.出现这种情况时,查询优化器也会做出不准确的判断.所以我们必须对这些相关列收集统计信息或直方图来描述这种依赖关系. 幸运的是,从Oracle11g开始,数据库可以收集基于表达式或者一组列上的对象统计信息和直方图,从而解决这种问题.这种新的统计叫做扩展的统计信息(extension statistics). 这种技术实际上是基于表达式或一组列创建一个隐藏列,叫做扩展(