![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Упаковка, резервое копироване таблиц Paradox [D6, Paradox]
intaari © (2005-01-12 12:58:00)Добрый день!!!
Читая литерату по програмированиб БД упоминается упаковка и резервное копировани таблиц. Второе понятно, а что подразумевается под упаковкой. Так же возник вопрос как правильно организовать резервирование данных. У кого есть опыт или соображения просьба высказаться.
Anatoly Podgoretsky (2005-01-12 17:59:00) [1]Необязательно, если одна база окажется не консистентной, то есть еще 23. Нагрузка не очень высокая.
DSKalugin (2005-01-12 17:49:00) [2]>Я сбрасываю раз в час, не руками конечно.
Дык закрывать базу полностью надо перед архивацией. Это что же пользователю за грабли такие будут каждый час база отключается. Работать не возможно. Или как-то по другому?
Anatoly Podgoretsky (2005-01-12 17:08:00) [3]Я сбрасываю раз в час, не руками конечно.
DSKalugin (2005-01-12 16:58:00) [4]Я делал так
-отключаюсь от БД
-закрываю БДЕ сессию
-архивирую базу архиватором.
В имени архива присутствует дата или день недели
-подключаюсь к базе
msguns (2005-01-12 16:31:00) [5]АП верно сказал о поколениях архивов. В случае поломки таблиц в парадоксе есть только 3 способа:
- вручную программером с помощью гроханья индексов и повторной индексациии поврежденной таблицы - лечится примерно в 90% случаев. Но а) нужен программер, б) полный останов всех клиентов, так или иначе юзающих поврежденные таблы, в) довольно муторно и не быстро. В случае успеха потерь почти нет.
- подъем всей базы из архива. Выполняется юзером без программиста. Потеря всей информации, введенной с момента получения архива.
- замена поврежденных таблиц БД их "предками" из архива. Очень трудоемкий и тонкий процесс, требующий досконального знания структуры и связей всей БД, а также особенностей работы клиентских программ. Как правило, продолжителен по времени. Теряется только та информация, которая была введена в поврежденные таблицы с момента снятия архива.
Сама процедура сброса в архив может выполняться двумя путями:
1. "Толстая" архивация: упаковка каталога с БД (зип или арж). Требует завершения работы с БД всех клиентов
2. "Тонкая" архивация: в отдельный (временный) каталог переписываются только данные (средствами парадокса - запрос по всем полям), а потом каталог упаковывается. При восстановлении нудна "база-шаблон" (т.е. пустая база, но со всей бизнес-логикой), которая переписывается на место рабочей, а в нее вливаются по очереди предварительно распакованные данные из архива. При наличии соотв.проги (достаточно сложной) можно "поднимать" не всю базу, а отдельные ее таблицы или группы таблиц) По сравнению с "толстой" не содержит повреждений и после восстановления полностью работоспособна.
Частота сброса БД в архив зависит от величины БД, ее изменяемости и режима работы конторы. Обычно сброс в конце раб.дня.
intaari (2005-01-12 15:32:00) [6]Есть ли еще какие нибудь варианты сохранности данных, без перехода на другую платформу.
Anatoly Podgoretsky (2005-01-12 15:26:00) [7]Тогда обычное копирование папки с таблицами. Только не делай автоматического восстановления. Кроме того само копирование тоже не безпасно, возможна замена рабочей копии испорченной. Поэтому стоит делать поколение архивов. Скажем по одному в день, на протяжении недели или более.
intaari (2005-01-12 15:16:00) [8]
> Что понимается под резервированием?
Исходя из того, что существует вероятность полной потери таблицы или в процессе востановления бубет потеряно существенное количество данных, есть смысл делать копию таблицы, скажем при запуске приложения и при невозможности восстановления заменять теущую таблицу копией. Так как я не имею достаточного опыта по работе с БД, это мое виденье вопроса.
Anatoly Podgoretsky (2005-01-12 14:42:00) [9]Для Парадокса особого смысла не имеет, кроме того как таковой упаковки у него нет, есть реструктизация таблиц.
intaari (12.01.05 12:58)
Что понимается под резервированием?
Александр Иванов (2005-01-12 13:03:00) [10]Упаковка таблиц - физическое удаление записей таблицы, ранее помеченных, как удаленные.