Leonardo Pedroso Costa
MongoDB | SQL Server | Oracle

Limpeza de dados obsoletos no catálogo do RMAN

Ao fazer uma manutenção rotineira no banco de dados, percebi que haviam muitos lixos de bancos antigos no catálogo do RMAN. A minha base se chama anvsrep e haviam pouco mais de 35 bancos distintos nela. Atualmente os bancos foram consolidados em instâncias maiores e consequentemente reduzidos a 4 ambientes.

O comando abaixo lista quais bancos existem no catálogo do RMAN:

SYS@anvsrep AS SYSDBA> SELECT db_key, dbid, name FROM rman.rc_database;

Todos esses bancos acima foram migrados para outra instância, mudando de nome e versão.

Resta agora limpar essas entradas do catálogo! O comando a ser utilizado é o pacote: dbms_rcvcat.unregisterdatabase. A sintaxe é acompanhada do DB_KEY e do DB_ID, conforme comandos abaixo:

EXECUTE dbms_rcvcat.unregisterdatabase(6074915 , 3508358279);
EXECUTE dbms_rcvcat.unregisterdatabase(152732, 3469247574);
EXECUTE dbms_rcvcat.unregisterdatabase(4225000, 3660298989);
EXECUTE dbms_rcvcat.unregisterdatabase(114749, 3579358991);
EXECUTE dbms_rcvcat.unregisterdatabase(133535, 3642263337);

Resultado da execução:

RMAN@anvsrep > EXECUTE dbms_rcvcat.unregisterdatabase(6074915 , 3508358279);
PL/SQL procedure successfully completed.

RMAN@anvsrep > EXECUTE rman.dbms_rcvcat.unregisterdatabase(152732,3469247574);
PL/SQL procedure successfully completed.

RMAN@anvsrep > EXECUTE rman.dbms_rcvcat.unregisterdatabase(4225000,3660298989);
PL/SQL procedure successfully completed.

Feito isso, basta sair do SQLPLUS e usar normalmente o catálogo, o tamanho dele será reduzido e você utilizará de fato somente as informações dos bancos que estiverem em uso.

 

Leonardo Pedroso

Leonardo Pedroso

Profissional de TI experiência em administração de banco de dados: SQL Server 2000 a 2019, Oracle 11g a 19c, PostgreSQL, MySQL, MongoDB, Cassandra. Atua realizando análise de desempenho, DR e HA, implantação, administração de banco de dados em cluster e implementação de projetos de banco de dados NoSQL (MongoDB, Cassandra), bem como automação de processos utilizando Shell script, Powershell (dbatools), e players de Cloud: Azure e Aws.