![]() |
Модераторы: Akina |
![]() ![]() ![]() |
|
MarinaK |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 29.1.2005 Репутация: нет Всего: нет |
Хочется сохранять базу в архиве, желательно ежедневно. Думаю при закрытии БД или по нажатию кнопки создавать директорию, названную по дате, и копировать туда файл - часть базы (с данными).
А как вы, опытные, поступаете? ![]() |
|||
|
||||
NikolayBY |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 63 Регистрация: 26.12.2005 Репутация: нет Всего: 1 |
Если отталкиваться от самого простого, то, так бы и делал, но все зависит от исходного размера. Если очень большой размер, то надо продумывать алгоритм сравнения и сохранять только произведенные изменения в некую базу, служащую для хранения данных
|
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Во-первых, отдели код от данных. Тогда данные бэкапятся по расписанию или событию, а код (запросы, формы, отчеты, модули и макросы) - по завершении очередного этапа раз(до)работки.
Код сохраняется вручную. И тут в общем ничего не сделать - SourceSafe не обслуживает Access. Что до сохранения данных - мой личный опыт привел меня к следующей методике: 1) Структура таблиц сохраняется автоматически генерируемым запросом на создание этой таблицы. Тут ничего сложного нет - пишешь один раз удобную тебе процедуру парсинга и сохранения TablEDef и напускаешь его на коллекцию (ForEach). 2) Сами данные сохраняются в текстовый файл. Формат разрабатывается самостоятельно в зависимости от собсно данных - он не должен допускать пересечения разделителей и контента. По сравнению с самой базой такой бэкап меньше в разы, даже без архивирования. 3) Для восстановления данных пишется еще одна универсальная процедура. Что же до восстановления структуры таблиц - запрос есть, только выполни. 4) Связи и протчая аналогичная ерунда - это просто бэкап данных из системных таблиц. Всего-то... Это - для БД, с которой не работают монопольно... если же с база на момент резервирования заведомо свободна - можно просто написАть VBS-скриптик, копирующий ее куда надо. Что-нить типа
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
vADIKg |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.5.2005 Репутация: нет Всего: нет |
1. Скрипт в шедулер
2. Есть специальные проги для бакапа - там все уже реализовано: создание отдельных каталогов, бакап измененных файлов, архивация |
|||
|
||||
MarinaK |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 29.1.2005 Репутация: нет Всего: нет |
Мне это и надо, я думаю. В шедулере - автоматический бэкап. А конкретно, какой программой пользуетесь? И еще вопрос. Если в момент автозапуска такого бэкапа база будет открыта... Не скопируется, боюсь... |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Бери WinRAR - не ошибешься ![]() А ты контролируй это дело... простейший способ - по отсутствию соотв. LDB-файла. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
MarinaK |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 29.1.2005 Репутация: нет Всего: нет |
||||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
MarinaK
Учти - даже в момент отпущенной БД файл может существовать. Тогда проверяй что он 1) не занят 2) имеет нулевой размер. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
vADIKg |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.5.2005 Репутация: нет Всего: нет |
Шедулер - LaunchPad v.3.03, работает безотказно А вот прога для бакапа простой копировщик, заменяющий файлы на более новые в папке, соответствующей дню недели. Не пакую по двум причинам: 1. база весит около 2 гигов (распаковывать потом долго,а нужна мегаоперативность) 2. места для бакапа полно ![]() Раньше, когда с местом был напряг паковал WinRar |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Если база MS Access перевалит за 2 гига - умрет... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
vADIKg |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.5.2005 Репутация: нет Всего: нет |
Спасибо за предупреждение. Вообще, большие базы на Аксессе стараюсь не рисовать. Двухгиговая база написана на первасиве и сами данные занимают много меньше места, нежели побочная бяка. Просто разговор шел о бакапе. До этого я обслуживал продукт (АБС), который весил более 5 гигов и основную массу занимала БД, которая являлась архивом данных и использовалась гораздо чаще, нежели текущие данные. Сервак был старенький и места было ну очень мало. Бакапилась системка в течение 5-6 часов ночью и рассовывалась по двум писюкам в сети. А вот однажды пришлось восстанавливать. Весь банк стоял, только после обеда начали работу. Нервов было утрачено немеряно. ЗЫ: руководство так и не поверило в целесообразность усовершенствования оборудования. но это уже лирика. |
|||
|
||||
SerJo |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 27.2.2006 Репутация: нет Всего: нет |
Виндовый шедулер, WinRar
"C:\Program Files\WinRAR\WinRAR.exe" a -o+ -dh -r -ibck -inul -ep1 -agyyyy.mm.dd C:\root\Disk\All\arc\mdb\ C:\root\Disk\DataBase\db\office\off.mdb В результате создается архив даже открытой базы вида 2006.02.27.rar Задание запускается ежечасно (база небольшая) с утра до 21.00. В итоге всегда имеею последний архивчик. |
|||
|
||||
vADIKg |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.5.2005 Репутация: нет Всего: нет |
Таким образом архив перезаписывается 10-13 раз. А смысл? Если данные "поползут" и попадут в архив, то по-любому придется восстанавливать бакап за прошлый день. Создавай тогда уж файлы YYYYMMDDHH.rar. |
|||
|
||||
Akina |
|
|||
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Есть определенный шанс заархивировать голову от одного состояния, а хвост - от другого. И в результате поиметь нерабочую резервную копию. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "MS Access" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | MS Access | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |