首页 > 代码库 > 解决oracle11g安装导致数据库无法自动搜集统计信息-转

解决oracle11g安装导致数据库无法自动搜集统计信息-转

近期发现个别11G数据库无法自动收集统计信息,部分视图查询结果如下:

SQL> select client_name,status from dba_autotask_client where client_name = ‘auto optimizer stats collection‘;CLIENT_NAME STATUS---------------------------------------------------------------- --------auto optimizer stats collection ENABLEDSQL>SQL> select client_name,status from dba_autotask_task;CLIENT_NAME STATUS---------------------------------------------------------------- --------SQL>SQL> select window_name,autotask_status from DBA_AUTOTASK_WINDOW_CLIENTS;WINDOW_NAME AUTOTASK_STATUS------------------------------ ---------------WEDNESDAY_WINDOW DISABLEDFRIDAY_WINDOW DISABLEDSATURDAY_WINDOW DISABLEDTHURSDAY_WINDOW DISABLEDTUESDAY_WINDOW DISABLEDSUNDAY_WINDOW DISABLEDMONDAY_WINDOW DISABLED7 rows selected

发现作业全部DISABLED,经测试发现和数据库安装时未勾选“启用自动维护任务”的现象一致(默认勾选),可能是之前DBA安装时取消勾选,如下图:

技术分享

由于未勾选“启用自动维护任务“,数据安装会执行如下命令,导致作业disable:

execute DBMS_AUTO_TASK_ADMIN.disable();

以后数据库如果需要启动自动维护任务,只需要执行如下命令:

SQL> execute DBMS_AUTO_TASK_ADMIN.enable();PL/SQL procedure successfully completedSQL> select window_name,autotask_status from DBA_AUTOTASK_WINDOW_CLIENTS;WINDOW_NAME AUTOTASK_STATUS------------------------------ ---------------WEDNESDAY_WINDOW ENABLEDFRIDAY_WINDOW ENABLEDSATURDAY_WINDOW ENABLEDTHURSDAY_WINDOW ENABLEDTUESDAY_WINDOW ENABLEDSUNDAY_WINDOW ENABLEDMONDAY_WINDOW ENABLED7 rows selected

解决oracle11g安装导致数据库无法自动搜集统计信息-转