Alterando Metadados do Banco de Dados
Este procedimento é necessário para evitar erros de Replicat ao alterar os seguintes metadados do banco de dados de origem:
-
Conjunto de caracteres do banco de dados
-
Conjunto de caracteres nacionais
-
Localidade
-
Fuso Horário
-
Distinção entre maiúsculas e minúsculas do nome do objeto
Se essas alterações forem feitas sem executar este procedimento, ocorrerá o seguinte erro:
2013-05-26 20:10:09 ERROR OGG-05500 Detected database metadata mismatch between current trail file ./dirdat/_p/v1000000003 and the previous sequence. *DBTIMEZONE: [GMT]/[UTC].
Este procedimento interrompe o processo Extract e, em seguida, cria um novo arquivo de trilha. Os novos metadados do banco de dados são incluídos neste novo arquivo com as transações que foram iniciadas após a alteração.
-
Interrompa a atividade da transação no banco de dados de origem. Não altere os metadados para o banco de dados ainda.
-
No sistema de origem, emita o comando
SEND EXTRACTcom a opçãoLOGENDaté que ele mostre que não há mais dados de redo para capturar.SEND EXTRACT *group* LOGEND -
Interromper Extração.
STOP EXTRACT *group* -
Em cada sistema de destino, emita o comando
SEND REPLICATcom a opçãoSTATUSaté que ele mostre um status de "At EOF" para indicar que ele terminou de processar todos os dados na trilha. Isso deve ser feito em todos os sistemas de destino até que todos os processos Replicat retornem "At EOF".SEND REPLICAT *group* STATUS -
Interrompa as bombas de dados e o Replicat.
STOP EXTRACT *group* STOP REPLICAT *group* -
Altere os metadados do banco de dados.
-
No sistema de origem, emita o comando
ALTER EXTRACTcom a opçãoETROLLOVERpara que o Extract principal passe pela trilha local para o início de um novo arquivo.ALTER EXTRACT *group*, ETROLLOVER -
Iniciar Extração.
START EXTRACT *group* -
Reposicione os processos Replicat para iniciar no novo número de sequência da trilha.
ALTER REPLICAT *group*, EXTSEQNO *seqno*, EXTRBA *RBA* -
Iniciar os processos Replicat.
START REPLICAT *group*