Anda di halaman 1dari 3

Um dos problemas mais srios na corrupo do banco de dados interbase a queda de energia no servidor de banco de dados durante o processo

o de gravao de dados de alguma aplicao. A interrupo do processo de gravao poder resultar na gravao de dados incompletos ou corrompidos. Precaues Bsicas de extrema importncia que o Administrador do Sistema e o prprio usurio tome os cuidados necessrios para evitar este tipo de acidente. Outra medida importante, configurar adequadamente o modo de escrita (gravao) no banco de dados. O Interbase possui dois modos de escrita: Sncrona e Assncrona Sncrona - Dados so gravados em disco imediatamente. Assncrona - a escrita considerada "cuidadosa", pois os dados so gravados assim que a transao for commitada. A desvantagem que em ambiente de trabalho windows, estas instrues so ignoradas, uma vez que o prprio sistema operacional controla estas tarefas. Em sistemas como Linux e/ou Unix, este tipo de escrita funciona muito bem. A vantagem deste tipo de escrita a performance, uma vez que o sistema operacional ir gerenciar o cache de dados. Mas preciso ter uma poltica muito boa de backup, para o caso de acontecer algum problema de corrupo. Na verso 6 do Interbase, assncrona a escrita padro. Ajustando a escrita
gfix -write sync banco_de_dados.gdb //ajusta em modo Sncrono gfix -write async banco_de_dados.gdb //ajusta em modo Assncrono

Reparando o banco Inicialmente, poderamos utilizar vrios programas para proceder com a recuperao do banco de dados, mas o prprio Interbase possui uma excelente ferramenta para isso. Esta ferramenta o GFIX que se encontra instalado no diretrio BIN do banco de dados, e funciona em linha de comando no Prompt do MS-DOS. A primeira coisa a ser definida, para facilitar e muito o trabalho, incluir variveis de ambiente no sistema operacional, onde iremos definir usurio, senha e localizao (path) do GFIX. Para tanto, inclua as linhas abaixo no arquivo AUTOEXEC.BAT e depois disso reiniciar o computador:
SET ISC_USER=SYSDBA SET ISC_PASSWORD=masterkey SET PATH=%PATH%;c:\arquiv~1\borland\interb~1\bin

Note que a varivel SET PATH poder mudar de acordo com o diretrio de instalao do interbase. Caso o sistema operacional seja o Windows 2000, Windows 2000 Server ou Windows XP, voc poder incluir estas variveis na opo "Variveis de Ambiente" nas Propriedades do Sistema (Painel de Controle) Lembrando que, a dever ser observada a condio de Case-Sensitive para usurio e senha. 1 Passo ( Cpia e Acesso ) Sempre utilize uma cpia do banco de dados corrompido, alm de possuir acesso exclusivo ao mesmo. Proceda ento com uma cpia utilizando o prprio windows explorer ou o MS-DOS, ex:
copy banco.gdb copia.gdb

2 Passo ( Verificar ) Verifique se o banco de dados realmente se encontra corrompido utilizando o seguinte comando:
gfix -v -full banco_de_dados.gdb

Caso o comando tenha indicado algum tipo de problema, a sim iremos comear as rotinas de reparo do banco a seguir. 3 Passo ( Reparar )
gfix -mend -full -ignore banco_de_dados.gdb

Aps este procedimento, deveremos novamente verificar se o banco foi reparado, utilizando o comando do 2 Passo. Caso ainda assim o banco continue apresentando erros, o prximo passo ser efetuar um backup completo e depois restaur-lo conforme descrito adiante. Backup do Banco de Dados Da mesma maneira como utilizamos o GFIX do Interbase, poderemos utilizar o utilitrio de backup, o GBAK, que tambm se encontra instalado no diretrio Bin do Interbase / Firebird e funciona em linha de comando. Veja alguns comandos descritos abaixo:
gbak -backup -v -ignore banco_de_dados.gdb arquivo_de_backup.gbk

Este o comando em sua forma mais simples. Caso houver necessidade, por falhas no procedimento, por exemplo, poder optar em incluir outras opes, como descrito abaixo: Ignorar o "garbage collection".
gbak -backup -v -ignore -garbage banco_de_dados.gdb arquivo_de_backup.gbk

Ignorar transaes em limbo:


gbak -backup -v -ignore -garbage -limbo banco_de_dados.gdb arquivo_de_backup.gbk

Aps proceder com o backup, poderemos agora finalmente tentar a restaurao do mesmo, descartando informaes danificadas, corrompidas, etc. Restaurando o Banco de Dados Para a restaurao do banco, podemos continuar a utilizar o utilitrio GBAK, conforme descrito abaixo: Restaurao bsica:
gbak -create -v arquivo_de_backup.gbk novo_banco.gdb

Caso este procedimento relate erros, tente as seguitnes opes: No ativar indices durante a restaurao:
gbak -create -v -inactive arquivo_de_backup.gbk novo_banco.gdb

Aps a concluso da restaurao, voc dever ativar os ndices manualmente. Restaurar uma tabela de cada vez:
gbak -create -v -one_at_time arquivo_de_backup.gbk novo_banco.gdb

Este procedimento far com que cada tabela seja restaurada e em seguida commitada, portanto desta maneira voc poder conseguir ao menos restaurar uma parte do banco de dados.

Anda mungkin juga menyukai