Страница программного продукта FSOffice |
Последняя версия продукта — 2007 (v 7.0) |
Обслуживание базы(Чай, кофе?..) Вы должны приучить себя к мысли, что рано или поздно ваша база данных необратимо испортится. Это может произойти через день, месяц, год или даже десятилетие. Но это произойдёт, ибо даже операционные системы периодически выходят из строя и их приходится переустанавливать. Вы никогда заранее не узнаете, в какой день и час произойдет сбой, поэтому для гарантии сохранности базы данных надо ежедневно делать её архивную копию. Единственный путь сохранить гарантированно работоспособную версию базы заключается в прямом копировании файла базы в надежное место с отключением всех пользователей и остановкой SQL-сервера. Более подробно этот процесс расписан ниже. Для прямого копирования файла базы необходимо предварительно закрыть все копии FSOffice а также другие приложения, работающие с базой данных, правильно завершив их работу. Затем следует остановить SQL-сервер InterBase (FireBird). Для этого открываем «Панель управления» операционной системы и запускаем «InterBase Server Manager» («Firebird 1.5 Server Manager»). Нажимаем кнопку Stop. Затем копируем файл базы BASE1.GDB в надёжное место. После копирования файла снова нажимаем Start. Периодически следует производить «чистку» базы данных. База данных работает таким образом, что удаленные записи в её таблицах не удаляются окончательно, а просто помечаются, как удалённые. Поэтому с течением времени база сильно замусоривается. Для чистки базы данных следует запаковать и снова распаковать базу специальной утилитой, входящей в комплект SQL-сервера. Для этого создадим пакетный файл (с расширением .bat) следующего содержания: set ISC_USER=SYSDBA Для Firebird путь к утилитам SQL-сервера «SERVER:C:\Program Files\Borland\InterBase\bin» замените на «SERVER:C:\Program Files\Firebird\Firebird_1_5\bin», где SERVER — сетевое имя компьютера, на котором расположен SQL-сервер. Файлы b.txt и r.txt, которые появятся в каталоге базы после запуска этого пакетного файла, являются лог-файлами упаковки и восстановления базы соответственно. Файл BASE1.GBK — упакованная и очищенная копия файла базы данных. Утилита gfix в этом пакетном файле на всякий случай отключает автосборку мусора и останавливает сервер. Утилита gbak запаковывает и распаковывает базу. Итак, для очистки базы от мусора, проделываем следующее. 1. Выполняем резервное копирование базы с остановкой SQL-сервера, как описано в начале этого параграфа (не забываем снова запустить SQL-сервер). 2. Запускаем вышеописанный пакетный файл на сервере из каталога файла базы. Внимательно читаем всё, что пишет нам пакетный файл в чёрном окне. После завершения работы файла размер базы должен существенно уменьшиться. В случае подключения пользователей к базе во время работы пакетного файла возможно ее повреждение. В этом случае выполняем действия по отключению пользователей и остановки SQL-сервера, описанные в начале параграфа, и копируем сохраненный в надёжном месте файл базы на место поврежденного. Снова запускаем SQL-сервер и повторяем попытку запуска пакетного файла. |
|
<<< |