quinta-feira, 29 de março de 2012

Erro [ ORA-01555 ] - Banco de dados Oracle


Senhores(as), boa noite,

Hoje vamos falar sobre um dos erros mais populares gerados nos arquivos de alertas dos bancos de dados Oracle, o erro ORA-1555, neste post, vou explicar o que deve ser feito quando este tipo de erro ocorrer.

Identificando o erro: ORA-01555 caused by SQL statement below (SQL ID: 8rz9dzt91sz7b, Query Duration=4607 sec, SCN: 0x0000.3c9f2a82):

Como podemos notar, o erro ORA-1555 trouxe algumas informações importantes, tais como ID e Query Duration, neste caso, a Query Duration é de 4607 segundos.

Portanto, com base nestas informações, vamos iniciar as verificações:



O comando abaixo, retornará o tempo (valor atual) configurado no parâmetro Undo_Retention.
SQL> show parameter undo_retention
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_retention                       integer     3600
SQL>

O Resultado é 3600 segundos, no erro ORA-1555, a query duration é de 4607 segundos, ou seja, excedeu o tempo configurado no parâmetro UNDO_RETENTION.

Solução:
Para sanar este erro, caso ele não foi pontual, ou seja, já ocorreu algumas vezes, você deve alterar o valor do parâmetro UNDO_RETENTION, conforme exemplo abaixo.

alter system set undo_retention=7200 scope=both;

Após a alteração acima realizada, as mensagens de erro ORA-1555 continuarem, adicione mais um datafile a tablespace, no comando abaixo, o datafile adicionado foi de 2GB:

ALTER TABLESPACE undotbs ADD DATAFILE '/u01/oracle/dbteste/undo1_02.dbf' AUTOEXTEND ON NEXT 128M MAXSIZE 2048m;

Qualquer dúvida, deixe seu comentário.
Grande abraço. 

Nenhum comentário:

Postar um comentário