Pular para o conteúdo
  • Este tópico contém 5 respostas, 3 vozes e foi atualizado pela última vez 14 anos, 6 meses atrás por jspaulonci.
Visualizando 6 posts - 1 até 6 (de 6 do total)
  • Autor
    Posts
  • #95565
    airoosp
    Participante

      Bom dia,

      Estou testando uma procedure que foi criada para gerar estatística do banco durante a noite através de um job.
      Na procedure foi colocado o comando dbms_stats.gather_database_stats executada através do usuário system.
      O problema é que apareceram erros informando que este usuário não tem acesso a diretórios no caso DATA_FILE_DIR e LOG_FILE_DIR.
      Porque é necessário o usuário ter permissão nestes diretórios para executar a estatística? Fazendo pesquisas vi que não é ideal utilizar o sys nem o system para gerar estatísticas e sim criar um outro usuário com perfil sysdba para esta operação.
      Fiz um teste criando outro usuário com este perfil só que apareceu outro erro “ORA-01925: maximum of 30 enabled roles exceeded”.

      Alguém sabe se é necessário criar outro usuário ou as estatísticas podem ser geradas com o SYS ou system (mas com mais privilégios, quais).

      Este processo esta sendo testado em um banco de testes versão 9i.

      Obrigado.

      Airton

      #95572
      jspaulonci
      Participante

        Me passe o comando inteiro do dbms_stas e também todos os erros

        #95581
        airoosp
        Participante

          Bom dia,

          Na procedure é executada a partir de um job, fiz testes com as duas linhas de comando:

          BANCO 9i.

          dbms_stats.gather_database_stats();

          dbms_stats.gather_database_stats(OPTIONS => ‘GATHER AUTO’);

          As mensagens de erro que retornaram foram:

          1 – Quando executado com o usuário System

          ORA-12012: error on auto execute of job 181
          ORA-06564: object DATA_FILE_DIR does not exist
          ORA-06512: at “SYS.DBMS_STATS”, line 10301
          ORA-06512: at “SYS.DBMS_STATS”, line 10795
          ORA-06512: at “SYS.DBMS_STATS”, line 10982
          ORA-06512: at “SYS.DBMS_STATS”, line 11076
          ORA-06512: at “SYS.DBMS_STATS”, line 11056

          2- Executado novamente depois de atribuir grant para o system no directory DATA_FILE_DIR, apareceu o erro abaixo.

          ORA-12012: error on auto execute of job 181
          ORA-29913: error in executing ODCIEXTTABLEOPEN callout
          ORA-29400: data cartridge error
          KUP-04080: directory object LOG_FILE_DIR not found

          3 – Quando executado com outro usuário que foi criado com perfil de Sysdba ocorreram os erros abaixo.

          ORA-12012: error on auto execute of job 202
          ORA-01925: maximum of 30 enabled roles exceeded

          Criei outro usuário e estou fazendo testes.

          Obrigado.

          Airton

          #95582
          jspaulonci
          Participante

            Caramba Airton, nunca vi isso cara
            Não faço a mínima idéia do que seja, vc tem Metalink, acho que abrir um chamado seja sensato.

            #95604
            vieri
            Participante

              [oracle@admdata11 exp]$ oerr ora 01925
              01925, 00000, “maximum of %s enabled roles exceeded”
              // *Cause: The INIT.ORA parameter “max_enabled_roles” has been exceeded.
              // *Action: Increase max_enabled_roles and warm start the database.

              #95607
              jspaulonci
              Participante

                Faz assim Airton, aumente esse parametro e rode denovo as suas estatísticas.

                http://download.oracle.com/docs/cd/B105 … tm#1019492

                Agora uma outra questão que recomendo você levar em consideração, você está migrando de ANALYZE para DBMS_STATS ? pergunto isso pois eu fiz uma migração de ANALYZE par DBMS_STATS em 9.2.0.5.0 e tive problemas com planos de execução que foram modificados depois de executar o DBMS_STATS, mudar não é problema a questão é, se mudar para pior, então tome cuidado e se puder teste os select mais pesados antes de implementar em produção.

                Abraços

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