corrupção no Interbase
Estou com um problema com o Iterbase. Quando tento conectar ao banco, recebo a seguinte mensagem:
Database file appears corrupt ()
bad checksum
checksum error on database page 37067 Secondary files unavailable.
Já rodei o gfix várias vezes e não resolveu o problema, será que alguém pode me ajudar?
Database file appears corrupt ()
bad checksum
checksum error on database page 37067 Secondary files unavailable.
Já rodei o gfix várias vezes e não resolveu o problema, será que alguém pode me ajudar?
Thaisandrade
Curtidas 0
Respostas
Kanedasam
01/07/2003
Primeiro você tem backup ? Se caso não tiver tente o seguinte
1 - Faça um BackUp/Restore do Banco e Remonta sua estrutura.
2 - use a sehuinte linga : gfix -m -i nomedobanco -user SYSDBA -password senhadosysdba
Caso não funcione me envie um email para ajudala
[size=18:cf98fca5f3][color=blue:cf98fca5f3][b:cf98fca5f3]Dica[/b:cf98fca5f3][/color:cf98fca5f3][/size:cf98fca5f3]
Para evitar o maximo e ficar precavida contra este tipo de erro e outros tais
Error while trying to open file
Error - I/O error for file ´C\DB.gdb´
unknown Win32 error 3
Mude o seu InterBase de modo Modo Asincrônico para Modo Sincrônico.
OBS : Perdera um pouco de desempenho mas ganhara em estabilidade, a perda e quase insignificante.
Vá ao console e digite :
gfix -write sync -user sysdba
-password masterkey c:\DB.gdb
1 - Faça um BackUp/Restore do Banco e Remonta sua estrutura.
2 - use a sehuinte linga : gfix -m -i nomedobanco -user SYSDBA -password senhadosysdba
Caso não funcione me envie um email para ajudala
[size=18:cf98fca5f3][color=blue:cf98fca5f3][b:cf98fca5f3]Dica[/b:cf98fca5f3][/color:cf98fca5f3][/size:cf98fca5f3]
Para evitar o maximo e ficar precavida contra este tipo de erro e outros tais
Error while trying to open file
Error - I/O error for file ´C\DB.gdb´
unknown Win32 error 3
Mude o seu InterBase de modo Modo Asincrônico para Modo Sincrônico.
OBS : Perdera um pouco de desempenho mas ganhara em estabilidade, a perda e quase insignificante.
Vá ao console e digite :
gfix -write sync -user sysdba
-password masterkey c:\DB.gdb
GOSTEI 0
Kanedasam
01/07/2003
Crie um mini aplicativo que ira fazer um backup para você, só que ele terá que ser um pouco diferente, então vamos lá:
1 – Crie com parâmetros em SQL
2 – Copie os campos um por um sempre finalizando com Post e Next.
3 – Crie um Log, de todo o procedimento de copia.
4 – Coloque um campo tipo edit no sistema onde ira controlar a posição inicial de copia pelo índice.
5 – No evento OnPostError ou OnUpdateError Capture a posição do índice e jogue dentro do Log.
6 – Não use Cachê, CommitUpdate Etc...
Explicando
Esta aplicação devera gravar campo por campo da sua tabela original para uma tabela de destino gravando em um arquivo txt aqueles campos que tiverem sucesso após o procedimento Post . Quando houver o erro ou quando chegar no índice danificado o sistema avisara , apartir do edit você poderá reiniciar a copia apartir da posição do erro , por exemplo , se você tem 100 registros e a sua copia vai bem do registro 001 ate 030 e no registro 031 esta o erro você ira no edit e digitara 032 para recomeçar o 031 perdido mesmo e assim sucessivamente poderá ser trabalhoso ou você pode ainda criar uma rotina para que ira pular automaticamente para o próximo índice . Tente fazer de duas formas primeiro direto com o banco de dados aberto e outra abrindo, posicione o ponteiro do índice automaticamente se caso de erro feche novamente grava a posição do erro abri novamente posicione o ponteiro no próximo índice após o erro e assim sucessivamente , Post , grava o log, Next , relembrando que isto devera ser feito pelo sistema automaticamente .
Se caso não conseguir entre em contato direto no meu e-mail o forum esta com erro .
kaneda_sam@hotmail.com
1 – Crie com parâmetros em SQL
2 – Copie os campos um por um sempre finalizando com Post e Next.
3 – Crie um Log, de todo o procedimento de copia.
4 – Coloque um campo tipo edit no sistema onde ira controlar a posição inicial de copia pelo índice.
5 – No evento OnPostError ou OnUpdateError Capture a posição do índice e jogue dentro do Log.
6 – Não use Cachê, CommitUpdate Etc...
Explicando
Esta aplicação devera gravar campo por campo da sua tabela original para uma tabela de destino gravando em um arquivo txt aqueles campos que tiverem sucesso após o procedimento Post . Quando houver o erro ou quando chegar no índice danificado o sistema avisara , apartir do edit você poderá reiniciar a copia apartir da posição do erro , por exemplo , se você tem 100 registros e a sua copia vai bem do registro 001 ate 030 e no registro 031 esta o erro você ira no edit e digitara 032 para recomeçar o 031 perdido mesmo e assim sucessivamente poderá ser trabalhoso ou você pode ainda criar uma rotina para que ira pular automaticamente para o próximo índice . Tente fazer de duas formas primeiro direto com o banco de dados aberto e outra abrindo, posicione o ponteiro do índice automaticamente se caso de erro feche novamente grava a posição do erro abri novamente posicione o ponteiro no próximo índice após o erro e assim sucessivamente , Post , grava o log, Next , relembrando que isto devera ser feito pelo sistema automaticamente .
Se caso não conseguir entre em contato direto no meu e-mail o forum esta com erro .
kaneda_sam@hotmail.com
GOSTEI 0