Tempo aproximado para leitura: 00:02:03 min
Dúvida
Como efetuar a recuperação de sincronismo de um banco de dado Progress?
Ambiente
Framework - Framework (Linha Datasul) - Progress OpenEdge – Todas as versões
Solução
Quando ocorrer o erro 9212,9215, 9213, 9217, 605 e/ou 1486 no Banco de Dados Progress, será necessário recuperar o sincronismo entre os arquivos do banco. Para tal, efetue o procedimento abaixo:
1. Execute o proenv do Progress, normalmente localizado do diretório de instalação, abaixo da pasta bin, exemplo: c:\dlc117\bin\proenv.bat;
2. Para facilitar a visualização do diretório corrente, informe o comando prompt;
3. Direcione para o diretório do seu banco de dados;
4. Execute o comando: prostrct unlock nome-do-banco
5. Se esse comando retornar que alguma inconsistência foi corrigida, vá para o passo 9, porém, caso for informado que nenhuma inconsistência foi corrigida, ou se retornar erro de sincronismo na execução do comando, proceda os comandos do próximo passo;
6. Gere o arquivo .st do banco: prostrct list nome-do-banco
7. Renomeie o arquivo .db do banco e execute o seguinte comando para recriar o arquivo:
prostrct builddb nome-do-banco
8. Execute o seguinte comando para desbloquear o controle de consistência:
prostrct unlock nome-do-banco
9. Execute o seguinte comando para recriar o before image - bi:
proutil nome-do-banco -C truncate bi -F
10. Confirme quando solicitado para ignorar o crash recover. Após esse comando, será emitida uma mensagem que o banco de dados está corrompido. Execute o seguinte comando para eliminar essa mensagem: proutil nome-do-banco -C idxbuild
11. Selecione a opção all. Confirme a seleção e as mensagens seguintes.
12. A partir desse momento, o banco está disponível para uso. Esse tipo de reindexação, gera um arquivo com a extensão .xb, que pode ser eliminado.
Importante
Antes de qualquer procedimento acima citado, faça um backup dos bancos de dados. Caso ocorra erros durante o procedimento, o banco poderá ser danificado e não mais recuperável.
0 Comentários