Pular para o conteúdo
  • Este tópico contém 3 respostas, 3 vozes e foi atualizado pela última vez 17 anos, 4 meses atrás por Ricardo Portilho Proni.
Visualizando 4 posts - 1 até 4 (de 4 do total)
  • Autor
    Posts
  • #83451
    Ronin
    Participante

      Boa noite,

      É possível saber através de alguma view dinâmica recomendação de criação de indices para determinadas ? assim como advisor sql do oracle 10g

      Ronald Marques

      #83453
      vieri
      Participante

        Somente através do advisor. Ele utiliza índices
        virtuais(não documentados), que nada mas é que um índice que só existe para o cálculo de estatística e para simular um plano de execução, como se o mesmo existisse.

        Vc pode fazer isso com a cláusula create index …. NOSEGMENT;
        antes disso emita esta alteração a nível de sessão.

        alter session set _use_nosegment_indexes = true ;

        após isso rode a estatistica para as tabelas e veja se o plano utilizou o
        índice.

        Outra maneira de obter infos sobre índices é com a claúsula create index … MONITORING USAGE;

        vc irá obter o status do índice, se ele está sendo utilizado
        e ver se vale a pena , excluir o mesmo. (V$OBJECT_USAGE)

        bem é por ai… essa éa ponta do iceberg.

        prossiga com os estudos.

        abraços ao GPO e parabéns pelo sucesso na matéria na PCMAGAZINE.

        #83454
        vieri
        Participante

          ops. erro de concordância…. rs

          pelo sucesso da matéria na PCMAGAZINE.

          #83456
          Ricardo Portilho Proni
          Participante

            Para usar o SQL Advidor sem o Enterprise Manager:
            (Vc irá precisar do SQL_ID do SQL que quer analisar, epegue ele na V$SQL)

            DECLARE

            RET_VAL VARCHAR2(4000);

            BEGIN

            RET_VAL := DBMS_SQLTUNE.CREATE_TUNING_TASK(SQL_ID => ‘gxtg1pzkt5fm5’, SCOPE => DBMS_SQLTUNE.SCOPE_COMPREHENSIVE, TIME_LIMIT => 60, TASK_NAME => ‘OA Tuning Task’, DESCRIPTION => ‘Oracle Accelator Tuning Task’);

            END;

            /

            EXEC DBMS_SQLTUNE.EXECUTE_TUNING_TASK(‘OA Tuning Task’);

            SELECT DBMS_SQLTUNE.REPORT_TUNING_TASK(‘OA Tuning Task’) RECOMMENTATION FROM DUAL;

            SELECT DBMS_SQLTUNE.SCRIPT_TUNING_TASK(‘OA Tuning Task’) RECOMMENTATION FROM DUAL;

            EXEC DBMS_SQLTUNE.DROP_TUNING_TASK(‘OA Tuning Task’);

          Visualizando 4 posts - 1 até 4 (de 4 do total)
          • Você deve fazer login para responder a este tópico.