Архивирование БД

1. coder 22.02.12 11:54 Сейчас в теме
Какие рекомендации ? и какой платный и бесплатный софт можно использовать ?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Kowka0011 22.02.12 11:59 Сейчас в теме
Чтобы провести архивирование базы данных в оперативном режиме, необходимо проделать следующие шаги:

Сделать резервные копии таблиц пользователей;
Сделать резервные копии системных таблиц;
Сделать резервную копию файла инициализации.
Архивирование таблиц пользователей

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

create table BACKTABL(NAME char(32));
insert into BACKTABL values('BACKTABL');
insert into BACKTABL values('TAB1');
insert into BACKTABL values('TAB2');
insert into BACKTABL values('TAB3');
Для каждой из таблиц, резервную копию которой надо получить, вызвать функцию htBackupTable(). Как правило, интересует также результат выполнения операции архивирования. Для протоколирования операций архивирования можно создать таблицу протокола, в которую и заносить коды завершения операций архивирования.

create table BACKLOG(DTLOG date, TMLOG dword, TBLOG char(32), ERLOG int);
var path = 'c:/backup/';
insert into BACKLOG values(DTLOG, TMLOG, TBLOG, ERLOG)
select today(), gettick(), NAME, htBackupTable(NAME, :path+NAME)
from BACKTABL;
Более сложные действия необходимо проделать, чтобы получить согласованную копию таблиц. Для этого необходимо объявить транзакцию по всем таблицам, согласованную копию которых собираемся получить. И только после этого выполнить функцию htBackupTable для каждой таблицы.

Архивирование системных таблиц

Для архивирования системных таблиц в оперативном режиме, необходимо вызвать функцию htCatalogBackup(). Эта функция создаст архивный файл, содержащий системные таблицы, коды хранимых процедур и коды триггеров, хранящихся на сервере.

Архивирование файла инициализации

Файл инициализации в процессе работы используется только для чтения параметров и никак не меняется. Поэтому для создания резервной копии файла инициализации достаточно скопировать его командой операционной системы. Команду операционной системы можно выполнить и с помощью функции system() из SQL-скрипта.
3. coder 22.02.12 12:05 Сейчас в теме
(2) Kowka0011,
А можно по подробней про файл инициализации и зачем он мне нужен ?
4. Babuin 22.02.12 12:37 Сейчас в теме
ух жеско как
а просто SQL бэкап + rar папки базы не проще?
5. coder 22.02.12 12:39 Сейчас в теме
6. Babuin 22.02.12 12:43 Сейчас в теме
ну тогда тупо копировать папку с базой тем же rarом
7. coder 22.02.12 12:45 Сейчас в теме
(6) Babuin, Хорошо, а rar можно настроить так што бы архивация запускалась в определенное время без участия человека ?
8. 1CLeXx 8 22.02.12 12:50 Сейчас в теме
На винде попробуйте Запланировать задание
9. coder 22.02.12 12:52 Сейчас в теме
(8) 1CLeXx, Пробовал, нестабильно работает иногда не запускается, по каким причинам я незнаю.
13. MaxDavid 127 22.02.12 13:16 Сейчас в теме
(9) Попробуйте запускать любым шедулером, их как грязи. Но архивирование rar'ом не гарантия целостности бэкапа, если пользователи работают постоянно. Rar может ругнуться или на отсутствие доступа к таблице, если она заблокирована пользователем (и соответственно прервать архивацию), или последовательно заархивировать таблицы в процессе записи данных, что может привести к отказу 1С запускаться из восстановленного бэкапа.
10. Babuin 22.02.12 12:54 Сейчас в теме
простой батник по типу такого
C:\Program Files\WinRAR\WinRAR.exe a -dh -ibck -s -ep1 -r -m2 -y -agyyyymmdd \\путькудаложитьбазу\имяфайла_.rar C:\Base1C\

и в планировщики задание его запускайте по расписанию
11. 1CLeXx 8 22.02.12 12:56 Сейчас в теме
Если не запускается попробуйте логи почитать Мой компьютер (правой кн мыши) - Управление - Просмотр событий и там ищите. Может некорректно срабатывает потому что к базе кто-то подконеекчен? (ну это один из вариантов), а так может сторонний какой нить софт поможет - поищите в гугле!
12. coder 22.02.12 13:00 Сейчас в теме
(11) 1CLeXx, К базе подключены все 24 часа в сутки вот в этом то и вся проблема в первом сообщение об этом говорится.
Я поясню. В общем ситуация такова, все представляют што такое аэропорт, так вот база используется и днем и ночью 24 часа в сутки, так как люди постоянно куда то летают.
14. AlexShap 2 22.02.12 13:20 Сейчас в теме
Уже очень давно использую написанные батники на каждый день недели. Базу жму rarом. Запускается шедулером. Архив только обновляется. Т.е. реально у нас данные есть за 1 неделю. Мне и клиентам хватает.
15. coder 22.02.12 13:45 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот