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


Por: almudena - Publicado el: 04 September 2012

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 
Share this

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.

Enviar un nuevo comentario

The content of this field is kept private and will not be shown publicly.
  • Las direcciones de las páginas web y las direcciones de correo se convierten a enlaces automáticamente.
  • Tags HTML permitidos: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Los saltos de línea y párrafo se crean automáticamente.

Más información acerca de las opciones de formato

Image CAPTCHA
Escriba los caracteres que se muestran en la imagen.