You are hereBlogs / almudena's blog / Cómo deshabilitar as estadísticas automáticas en 10g e 11g
Cómo deshabilitar as estadísticas automáticas en 10g e 11g
Para deshabilitar as estadísticas en 10g, será suficiente con executar:
EXECUTE DBMS_SCHEDULER.DISABLE('GATHER_STATS_JOB');
Esto aplica para unha 10g pero non para unha 11g. Neste último caso este job como tal non existe se non que está incluido dentro das AUTOTASKS:
SQL> select job_name from dba_scheduler_jobs; JOB_NAME FROM DBA_SCHEDULER_JOBS;
JOB_NAME
------------------------------
XMLDB_NFS_CLEANUP_JOB
SM$CLEAN_AUTO_SPLIT_MERGE
RSE$CLEAN_RECOVERABLE_SCRIPT
FGR$AUTOPURGE_JOB
BSLN_MAINTAIN_STATS_JOB
DRA_REEVALUATE_OPEN_FAILURES
HM_CREATE_OFFLINE_DICTIONARY
ORA$AUTOTASK_CLEAN
FILE_WATCHER
PURGE_LOG
SQLSCRIPT_776944
MGMT_STATS_CONFIG_JOB
MGMT_CONFIG_JOB
RLM$SCHDNEGACTION
RLM$EVTCLEANUP
SQL>
SQL> select client_name,status from dba_autotask_client;
CLIENT_NAME STATUS
---------------------------------------------------------------------
auto optimizer stats collection ENABLED
auto space advisor ENABLED
sql tuning advisor DISABLED
Para deshabilitalo temos que empregar o paquete DBMS_AUTO_TASK_ADMIN:
SQL> exec DBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'auto optimizer stats collection',operation => NULL,window_name => NULL);
PL/SQL procedure successfully completed.
SQL>
Facemos a comprobación:
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


Me ayudo mucho!
Hola
Si lo haces así desactivarás el analyze de las tablas de diccionario.
En 11g la forma correcta (si no me equivoco) es:
exec DBMS_STATS.SET_GLOBAL_PREFS('AUTOSTATS_TARGET','ORACLE');
De esta forma solo se analizan las tablas de diccionario y no las de usuario.
como rezar el rosario
Post new comment