InterBase - статьи


Резервное копирование базы данных и последующее восстановление - часть 3


while not (fibBackUp.Eof) do

begin

mBackup.Lines.Add(fibBackUp.GetNextLine);

end;

mBackup.Lines.Add('*************** Резервное копирование закончено ***************');

fibBackUp.Active := false; //закрываем процесс

Screen.Cursor := crDefault;

except

MessageDlg('Ошибка при резервном копировании базы данных',mtError,[mbOk],0);

end;

Результат бекапа будет выведен в Memo-поле:

На следующем рисунке представлена форма с помощью, которой можно осуществить восстановление базы данных:

Для процесса restore использовался компонент TpFIBRestoreService, в листинге показаны часть настроек, которые необходимо установить перед запуском процесса восстановления. //восстанавливаем базу данных в новый указанный файл

if chNewDB.Checked then fibRestore.Options := [CreateNewDB];

//перезаписываем базу данный при restore

if chReplace.Checked then fibRestore.Options := [Replace];

fibRestore.BackupFile.Add(edPathGBK.Text); //указываем GBK файл

fibRestore.DatabaseName.Add(edDirGDB.Text); //указываем файл базы данных

fibRestore.PageSize := StrToInt(cxComboBox1.Text); //размер страницы

fibRestore.ServerName := ‘localhost’;

fibRestore.Params.Add('user_name=SYSDBA');

fibRestore.Params.Add('password=masterkey');

try

Screen.Cursor := crSQLWait;

fibRestore.Active := True;

fibRestore.ServiceStart;

mRestore.Lines.Add('**************** Начат процесс восстановления: ' + edPathGBK.Text + '****************');

mRestore.Lines.Add(');

while not (fibRestore.Eof) do mRestore.Lines.Add(fibRestore.GetNextLine);

mRestore.Lines.Add(');

mRestore.Lines.Add('**************** Восстановление закончено ****************');

fibRestore.Active := false;

Screen.Cursor := crDefault;

except

MessageDlg('Ошибка при восстановление базы данных',mtError,[mbOk],0);

end;

Результат восстановления представлен на следующем рисунке:

document.write('');

Новости мира IT:

  • 02.08 -
  • 02.08 -
  • 02.08 -
  • 02.08 -
  • 02.08 -
  • 01.08 -
  • 01.08 -
  • 01.08 -
  • 01.08 -
  • 01.08 -
  • 01.08 -
  • 01.08 -
  • 01.08 -
  • 01.08 -
  • 01.08 -
  • 31.07 -
  • 31.07 -
  • 31.07 -
  • 31.07 -
  • 31.07 -



  • - Начало -  - Назад -