Backup e restauração noIB/FB

12/08/2003

0

Alguns colegas postaram o pedido da rotina que eu uso para o IB/FB.

Devo deixar claro que a rotina abaixo foi desenhada para meu uso e algumas coisas devem ser adequadas ao uso de cada um.
Estou disponibilizando aqui, pois um erro na página não me permitiu responder as mensagens particulares. Espero qiue possa servir de norte para os colegas.

BACKUP

with IBBackupService1 do
begin
ServerName := ´Local Server´;
LoginPrompt := False;
Params.Add(´user_name=SYSDBA´);//se segurança for imporatnte, trate essas linhas
Params.Add(´password=masterkey´);
Active := True;
try
Screen.Cursor:=-11;
Backupfile.Clear;
MEMO2.Clear;
Memo2.Lines.Add(´/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\´);
Memo2.Lines.Add(´ Iniciando Cópia de Segurança...´);
Memo2.Lines.Add(´/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\´);
DatabaseName := DB1.databasename;//db1 é um TDatabase
BackupFile.Add(´C:\Arquivo.gbk´);//defina aqui onde deve ser feito o backup...
ServiceStart;
While not Eof do Begin
Memo2.Lines.Add(GetNextLine);
Application.ProcessMessages;
end;
finally
Memo2.Lines.Add(´/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\´);
Memo2.Lines.Add(´ CÓPIA DE SEGURANÇA EXECUTADA COM SUCESSO!´);
Memo2.Lines.Add(´/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\´);
Active := False;
Screen.Cursor:=0;
end; end; end;



RESTAURAÇÃO
begin
DM1.DB1.Connected:=false;
DM1.DB1.Close;
with IBRestoreService1 do Begin
ServerName := ´Local Server´;
Params.Add(´user_name=SYSDBA´);
Params.Add(´password=masterkey´);
Active := True;
try
Screen.Cursor:=-11;
Verbose := True;
Options := [Replace, UseAllSpace];
PageBuffers := 3000;
PageSize := 4096;
DatabaseName.Add(DB1.databasename);//db1 é um TDatabase
Backupfile.Clear;
MEMO2.Clear;
Memo2.Lines.Add(´/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\´);
Memo2.Lines.Add(´ Iniciando Restauração da BD...´);
Memo2.Lines.Add(´/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\´);
BackupFile.Add(´C:\Arquivo.gbk´);
ServiceStart;
While not Eof do BEGIN
Memo2.Lines.Add(GetNextLine);
Application.ProcessMessages;
end;
Memo2.Lines.Add(´/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\´);
Memo2.Lines.Add(´ Restauração Concuída...´);
Memo2.Lines.Add(´/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\´);
finally
Screen.Cursor:=0;
Active := False;
end; end; end;


Koplin

Koplin

Responder

APRENDA A PROGRAMAR DO ZERO AO PROFISSIONAL

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar