Страница 1 из 1

Слишком долгое восстановление... в чем причина ?

Добавлено: 03 окт 2012, 10:06
eu6pc
Добрый день, уважаемые коллеги!
Моя ситуация такова: Имеем Interbase 7.1 и базу на 4,5 Ггб.
Раньше резервное копирование и восстановление выполняла программа на Delphi, которая использовала стандартные компоненты Interbase - Backup и Restore. Однако недавно она перестала работать. Причина, как выяснилось в компоненте Restore: резервное копирование проходило отлично, а вот при восстановлении - просто пропадали все записи из всех таблиц и больше ничего не происходило. (я полагаю что это кривизна данного компонента, видимо база достигла какого-то предела ?). При этом ручное копирование-восстановление из IBExpert проходило отлично.
Что бы дальше делать backup&Restore был написан батник, который повешан в сервере на запуск по расписанию:

Код: Выделить всё

echo off
echo ---= Запуск резервного копирования =---
echo --запускаем резервное копирование - %date% - %time% 
"C:\Program Files\Borland\InterBase\bin\gbak.exe" -b -user SYSDBA -password masterkey localhost:d:\arm_base\base.gdb c:\bacup\base.gbk
echo --отключаем всех пользователей от базы - %date% - %time% 
"C:\Program Files\Borland\InterBase\bin\gfix.exe" -shut -force 0 -user SYSDBA -password masterkey localhost:d:\arm_base\base.gdb
echo --копируем базу данных - %date% - %time% 
copy d:\arm_base\base.gdb c:\bacup\base%date%.gdb /Y
echo --восстанавливаем базу - %date% - %time% 
"C:\Program Files\Borland\InterBase\bin\gbak.exe" -r -user SYSDBA -password masterkey c:\bacup\base.gbk localhost:d:\arm_base\base.gdb 
echo --делаем базу доступной (online) - %date% - %time% 
"C:\Program Files\Borland\InterBase\bin\gfix.exe" -online  -user SYSDBA -password masterkey localhost:d:\arm_base\base.gdb
echo ---= Резервное копирование окончено %date% - %time% =---
Резервое копирование проходит за 20 минут, как и раньше.
А вот восстановление занимает более 6 часов!!! (хотя раньше было 45 мин).
При копировании ошибок gbak никаких не выдает, при восстановлении выдал несколько варнингов:

Код: Выделить всё

gbak: WARNING: action cancelled by trigger (1) to preserve data integrity
gbak: WARNING:     could not find column for GRANT
Но это, я думаю, не существенно (видимо удалили какую-то таблицу или поле и теперь проблемы с правами на него ?)

Подскажите, пожалуйста, в чем может быть причина - почему так долго восстанавливается база ?
Может быть есть более правильный способ осуществлять backup-restore ?
Спасибо!

Re: Слишком долгое восстановление... в чем причина ?

Добавлено: 03 окт 2012, 12:01
kdv
либо здесь, либо на sql.ru. Ответил там
http://www.sql.ru/forum/actualutils.asp ... g=13260605