Резервариус администратора: сделай копию и делай, что хочешь!

26.06.13

База данных - Архивирование (backup)

Необходимо менять базу [скрипты, файлы ... неважно] и хочется подстраховаться? Копия нужна прямо сейчас, чтобы не тряслись коленки потом и можно было сделать “rollback”? Резервариус: сделай копию и делай, что хочешь! Универсальная система хранения копий любых файлов и папок. Поможет там, где нет смысла применять полноценную систему контроля версий или систему резервного копирования.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Резервариус администратора 1.0
.exe 778,02Kb
76 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Хочу представить вам инструмент, которым уже давно пользуюсь в своей работе и считаю необходимым для каждого администратора и программиста.

Область применения

  • Базы 1С всех версий.
  • Базы сторонних программ (всякие налогоплательщики, пенсионки и прочие).
  • Отдельные dbf файлы.
  • Скрипты, файлы настроек.
  • Любые файлы и папки с данными.
Плюсы
  • Интегрирован в проводник (выбирайте нужные файлы и папки, чтобы отправить их в “Хранилище копий”).
  • Поддерживается "drag and drop" на форму программы.
  • Хранилище можно делать сетевым (при сохранении копии учитывается сетевое имя компьютера).
  • Копии сжимаются замечательным архиватором 7-zip, интегрированным в программу.
  • Перед копированием файлы блокируются на запись, что гарантирует целостность данных.
  • Настраиваются исключения для файлов и папок при копировании.
Зачем
  • Часто в работе возникает необходимость сделать снимок какой-нибудь группы файлов и отложить на полочку, чтобы потом, в случае чего, быстро оттуда достать.
  • Если только это не исходники чего-либо, система контроля версий не подходит.
  • Система резервного копирования тоже остается не удел, так как настраивается обычно для регулярной архивации определенного набора данных.
  • Всегда было желание иметь некий инструмент для работы с такой полочкой. Что-то типа "одноразовой моментальной системы резервного копирования".
  • Так возникла идея Резервариуса. Она была реализована и используется в моей практике вот уже 2 года как дополнение к системам резервного копирования и контроля версий.
Буду рад, если она пригодится кому-нибудь ещё.
 
С уважением, Алексей Карманов (helpme1c.ru)

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Архивирование (backup) Инструменты администратора БД Системный администратор Программист 1С 8.3 1С:Управление торговлей 11 1С:Библиотека стандартных подсистем Абонемент ($m)

Полностью автоматизированная внешняя обработка для администрирования 1С: блокировка/разблокировка ИБ, массовое завершение сеансов, резервное копирование и восстановление из .dt, выгрузка/загрузка конфигурации (.cf), пакетная работа с расширениями (.cfe) и дополнительными обработками – всё через удобную форму без ручных запусков конфигуратора и консоли кластера

1 стартмани

21.01.2026    4989    49    war41k    0    

17

Архивирование (backup) Групповая разработка (Git, хранилище) Системный администратор Программист Бесплатно (free)

Как дать возможность каждому разработчику 1С вести разработку, тестирование и оптимизацию на собственной полноразмерной копии базы и при этом не тратить миллиарды рублей и тысячи часов на развертывание тестового окружения, а так же экономить дисковое пространство? Расскажем о том, как с помощью инструмента Database Lab получать полноразмерные копии базы 1C на СУБД PostgreSQL за считанные секунды (даже в случае использования многотерабайтных баз).

15.12.2025    10091    nasonkin    18    

30

Архивирование (backup) Учет документов Бухгалтер 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

В текущих версиях 1С пока нет функции, позволяющей автоматически отмечать возврат оригиналов документов с помощью сканера штрих-кодов. Многие контрагенты часто сталкиваются с проблемой утери оригиналов УПД или их невозврата. В ответ на эти запросы было разработано расширение, которое упрощает контроль за возвратом оригиналов документов и помогает лучше организовать их хранение.

12200 руб.

19.02.2025    2404    3    0    

3

Архивирование (backup) Системный администратор 1С 8.3 Бесплатно (free)

Предлагаю Вашему вниманию 3 скрипта на bash (sh) для архивирования (backup) типовых конфигураций на Linux средствами 1С и Postgres. Перед запуском корректно заполните раздел "Параметры" в соответствии с Вашими настройками.

20.01.2025    4501    Prelude    5    

12

Архивирование (backup) 1С:Предприятие 8 1С:Управление нашей фирмой 3.0 Платные (руб)

Расширение поможет настроить резервное копирование баз SQL в стандартный файл выгрузки баз 1С (*.dt).

3 стартмани

27.08.2024    3658    1    a_kudaev    6    

2

HighLoad оптимизация Администрирование СУБД Архивирование (backup) Системный администратор Программист 1С:Предприятие 8 Бесплатно (free)

Бэкап в Postgres состоит из набора граблей, которые нужно обойти для успешного восстановления. Они заложены в самых неожиданных местах от предмета резервного копирования (база или кластер) до структуры каталогов. Один неверный шаг и восстановление будет невозможным. Почему нельзя было сделать проще, как в MS SQL или Oracle? Почему бэкап в Postgres оставляет впечатление чьей-то лабораторной работы? Статья адресована прежде всего специалистам 1С, избалованным комфортом в MS SQL, в суровых буднях импортозамещения на Postgres.

13.08.2024    9321    1CUnlimited    11    

6

Инструменты администратора БД Архивирование (backup) Системный администратор Программист 1С:Предприятие 8 Абонемент ($m)

Обработка для "обновления" своей тестовой базы из резервной копии рабочей базы без помощи админов.

1 стартмани

21.05.2024    4414    15    DenDev01    4    

9

Архивирование (backup) Администрирование СУБД Системный администратор Россия Бесплатно (free)

Постараюсь объяснить, зачем нужно резервное копирование именно журнала транзакций, а не только базы данных, и почему я словно сбросил груз, настроив его - как, покажу, естественно. Кстати, будут скрипты T-SQL (с подробными комментариями) - отличный способ сделать администрирование базы более уютным.

04.12.2023    18067    n_mezentsev    15    

27
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. boolean 28 26.06.13 09:20 Сейчас в теме
а архиваторы 7zip, WinRAR не справляются с данной задачей?
2. alexey.karmanov 189 26.06.13 09:29 Сейчас в теме
(1) boolean,
со сжатием? Отлично справляются, именно поэтому я для сжатия использую любимый архиватор 7-zip, встроенный прямо в программу.

Раньше я так и делал. У меня была специальная папочка на компьютере (называлась, что-то типа "backup (manual)". И вот я каждый раз делал архив такой страховочной копии. Что мне не нравилось в таком подходе: нужно ручками правильно называть архив, прописывать число, указывать куда сохранять.

Помучался я так, а потом взял и написал Резервариус. Один раз настроил в нём папку для хранилища копий. Теперь, чтобы создать копию файлов и папок - я просто выделяю их в проводнике, меню отправить -> хранилище копий. Всё остальное Резервариус делает сам: называет с учетом пути к данным, указывает дату и время, жмет. Удобно получилось.

А потом я ещё и прикрутил, чтобы имя компьютера учитывалось. И сделал на всю локальную сеть на работе одно хранилище. Таким образом копии хранятся в одном месте, а создаваться могут на любом из компьютеров сети.

Подумал, что это не одному мне может быть полезно и выложил сюда.
3. alexey.karmanov 189 26.06.13 09:32 Сейчас в теме
(1) boolean,
плюс есть возможность задать исключения. Для баз 7.7 очень полезно: не нужно копировать те же cdx и всякие левые папки.

Ну и возможно самое главное: перед копированием набора файлов - сначала они все блокируются на запись, потом копируются и только потом разблокируются. Если просто жать архиватором - есть вероятность создать разсогласованную копию. Делая копии Резервариусом - можно быть уверенным в их целостности.
4. lamelioss 143 26.06.13 09:45 Сейчас в теме
а под *nix оно работать будет? =)
5. alexey.karmanov 189 26.06.13 09:50 Сейчас в теме
(4) lamelioss,
Нет, к сожалению только Windows системы =))

А ведь действительно на *nix она была бы весьма кстати.
6. lamelioss 143 26.06.13 10:00 Сейчас в теме
(5) вот вот )) я лет 6 назад писал что то похожее под линуху, напрягали всякие архиваторы ) если найду исходники, поделюсь )
7. alexey.karmanov 189 26.06.13 10:02 Сейчас в теме
(6) lamelioss, давай! Буду признателен =)) Было бы здорово сделать Резервариус кроссплатформенным.
8. lamelioss 143 26.06.13 10:08 Сейчас в теме
(7) окей, старый винт найду, кину ))) или заново напишу на край 8)
9. hogik 447 26.06.13 18:32 Сейчас в теме
(0) (3)
"перед копированием набора файлов - сначала они все блокируются на запись ... можно быть уверенным в их целостности"(с)
Алексей (alexey.karmanov).
Опишите, пожалуйста, алгоритм блокировки для файловых версий 1С-а.
10. hogik 447 26.06.13 21:13 Сейчас в теме
(0)
"сначала они все блокируются на запись"(с)
Алексей (alexey.karmanov).
1) Никакая "внешняя" блокировка не может обеспечить согласованную копию, если не учитывается логика блокировок самой СУБД.
2) Блокировка без учета логики блокировок СУБД приводит к подобным явлениям:
http://infostart.ru/public/15577/
http://infostart.ru/public/16158/
P.S. Ставлю "минус" под публикацию, дыбы обратить внимание потенциальных пользователей на мои замечания.
P.P.S. Жду от автора публикации ответа на (9) сообщение, чтобы убрать "минус".
11. alexey.karmanov 189 27.06.13 02:19 Сейчас в теме
(10) hogik,
или вы меня не до конца поняли, или я вас :)

Давайте на примере папки с базой какой-нибудь рассмотрим, пусть это будет 1С 7.7, там много файлов:
1) Вы нажимаете на папке с базой или на файлах базы правой кнопкой, отправить -> "Хранилище копий".
2) Резервариус составляет полный список файлов входящих в эту папку и пытается получить эксклюзивный доступ к каждому файлу (не попадающему под маску исключений).
3) Если хотя бы с одним файлом ему это не удается (например, база открыта в 1С Предприятии), то он пишет ошибку и отказывается создавать копию всей папки SSTDB.
4) Если эксклюзивный доступ ко всем файлам получен, то это означает, что они открыты на чтение в режиме разделения, при котором другие приложения могут только читать эти файлы, но не писать. Это значит, что после этого пункта ни 1С, ни какие другие приложения не смогут открыть базу и что-нибудь там менять, а будут писать ошибка эксклюзивного доступа, так как файлы уже заняты Резервариусом. Это я и имел под "блокируются на запись".
5) Все файлы жмутся в копию.
6) Эксклюзивная блокировка снимается.
12. hogik 447 27.06.13 02:45 Сейчас в теме
(11)
"или вы меня не до конца поняли, или я вас :) "(с)
Алексей (alexey.karmanov).
Оба. :-)
1) Эксклюзивный режим открытия файла и блокировки некого "региона" файла - две большие разницы.
2) Открыть файл в эксклюзивном режиме невозможно, если он уже открыт в любом режиме.
3) Для файла открытого в эксклюзивном режиме понятие блокировка "региона" не имеет смысла.
4) 1С никогда не открывает файлы в разделенном режиме только для чтения.
5) В Win32 блокируется "регион" для "доступа" вообще, а не чтения и/или записи.
Дык, чего и как Вы открываете и блокируете?
13. alexey.karmanov 189 27.06.13 02:53 Сейчас в теме
(12) hogik,
1) я отрываю на чтение с эксклюзивным доступом весь файл, а не регион этого файла.
2) правильно, если он отрыт уже другой программой, у меня не получится получить эксклюзивный доступ к файлу и Резервариус напишет ошибку, что мол "возможно файлы заняты другой программой".
3) я и не говорил нигде ничего про блокировку "региона".
4) 1С не открывает, я открываю.

Приведу конструкцию на c#, в MSDN лень лезть сейчас искать
Stream = File.Open(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);
поток отрыт до конца копирования.

Попробуйте сами, откройте базу в 1С и у вас не получится её скопировать Резервариусом.
Теперь запустите копирование закрытой базы Резервариусом и у вас не получится её ничем больше открыть, пока Резервариус не закончит свою работу.
15. hogik 447 27.06.13 03:09 Сейчас в теме
(13)
Алексей (alexey.karmanov).
"я отрываю на чтение с эксклюзивным доступом весь файл, а не регион этого файла"(с)
А где я написал про открытие региона? Вы чо? ;-)
"я и не говорил нигде ничего про блокировку "региона". "(с)
Верно. Не говорили. Но, вы говорили про блокировку. А блокировка выполняется только для понятия "регион": "The LockFile function locks a region in an open file. Locking a region prevents other processes from accessing the region."
"Попробуйте сами, откройте базу в 1С и у вас не получится её скопировать Резервариусом.
Теперь запустите копирование закрытой базы Резервариусом и у вас не получится её ничем больше открыть, пока Резервариус не закончит свою работу. "(с)

Вот, думаю, ключевая Ваша фраза. ;-) Т.е. Ваша программа работает только, если в систем нет пользователей. Так? Тогда зачем говорить о блокировках файлов. Всё у Вас проще. Удалось открыть ВСЕ файлы в эксклюзивном режиме - копируем. Не удалось - не копируем.
16. alexey.karmanov 189 27.06.13 03:16 Сейчас в теме
(15) hogik,
Вот, думаю, ключевая Ваша фраза. ;-) Т.е. Ваша программа работает только, если в систем нет пользователей. Так? Тогда зачем говорить о блокировках файлов. Всё у Вас проще. Удалось открыть ВСЕ файлы в эксклюзивном режиме - копируем. Не удалось - не копируем.


Ну конечно же! Я, посмотрев список ваших работ, так и понял, что вас ввело в заблуждение слово блокируется на запись. Я имел в виду эксклюзивный доступ к файлу, а вовсе не LockFile.

Именно так и работает Резервариус: "Удалось открыть ВСЕ файлы в эксклюзивном режиме - копируем. Не удалось - не копируем.". Что и обеспечивает согласованность копии в конечном итоге.
20. hogik 447 27.06.13 03:25 Сейчас в теме
(16)
"Что и обеспечивает согласованность копии в конечном итоге."(с)
Алексей (alexey.karmanov).
И вот этим не надо путать людей. :-) Т.к. если нет активных сессий, то получить НЕсогласованную копию не получится. А жаль... :-)
23. alexey.karmanov 189 27.06.13 03:28 Сейчас в теме
(20) hogik,
эту фразу я написал, чтобы подчеркнуть отличие копирования Резервариусом и просто скажем архиватором или проводником. Там эксклюзивный доступ к группе копируемых файлов не применяется и поэтому в процессе копирования файлы могут быть открыты субд, изменены и копия получится разсогласованной.

А если использовать Резервариус, который сначала открывает с эксклюзивным доступом, а потом копирует, то копия будет согласованной, благодаря именно этой защите от открытия.

То есть, вполне можно сказать, что эксклюзивный доступ обеспечивает согласованность копии.
17. alexey.karmanov 189 27.06.13 03:18 Сейчас в теме
(15) hogik, в следующей версии в описании исправлю слово "блокировка" на "эксклюзивный доступ", чтобы не вводить в заблуждение специалистов :)
19. alexey.karmanov 189 27.06.13 03:22 Сейчас в теме
(15) hogik, и справедливости ради речь с моей стороны была фраза "блокируется на запись", а не "блокировка" :)
Потому, что не программисту эта фраза более понятна, чем "эксклюзивный доступ". Понял вас, распишу подробнее.
22. hogik 447 27.06.13 03:27 Сейчас в теме
(19)
"блокируется на запись"
Алексей (alexey.karmanov).
Нет такого понятия!!!
25. alexey.karmanov 189 27.06.13 03:32 Сейчас в теме
(22) hogik, обещаю в самое ближайшее время описать всё по понятиям :)) Сейчас какое-нибудь изменение будет в программе и исправлю заодно. Всё же как ни крути, а утилита для айтишников. И описание должно быть грамотным. Спасибо.
24. hogik 447 27.06.13 03:29 Сейчас в теме
(19)
Алексей (alexey.karmanov).
У Вас блокируется "на полный НЕ доступ".
14. alexey.karmanov 189 27.06.13 02:58 Сейчас в теме
(12) hogik,
Я ещё раз хочу подчеркнуть, что Резервариус не ставит перед собой цель скопировать базу, которая УЖЕ открыта и обеспечить согласованность копии. Это действительно невозможно, поэтому в этом случае он и пишет ошибку.
Он будет копировать, только если база закрыта. И если он начнет копирование, то открыть базу в процессе этого не получится.
18. hogik 447 27.06.13 03:19 Сейчас в теме
(14)
Алексей (alexey.karmanov).
Вот Ваша фраза, которая путает:
"перед копированием набора файлов - сначала они все блокируются на запись, потом копируются и только потом разблокируются."(с)
Т.е. файлы не блокируются, не блокируются на запись, не разблокируются.
Они, просто, открываются в эксклюзивном режиме. :-) Но, открываются ВСЕ, если удалось ВСЕ открыть. И только тогда делается копия.
Минус, конечно, снимаю под публикацией. Но, написать об эксклюзивном выполнении копирования, думаю, имеет смысл.
alexey.karmanov; +1 Ответить
21. Программулькин 303 27.06.13 03:26 Сейчас в теме
Плюсую. За что? Всё просто. Мне тоже лень делать рутину, а тут автоматизация рутинной нудной работы (пусть кратковременной, но если подсчитать сколько я таких "горячих копий" делаю, то времени уходит много). Лень двигатель прогресса. Имхо, настоящий Айтишник должен быть ленивым, иначе он не Айтишник. Мы всё делаем для юзеров,а тут для нас. Короче, лови плюс.
alexey.karmanov; +1 Ответить
26. internetname 27.06.13 18:30 Сейчас в теме
Копии это наше все.
alexey.karmanov; +1 Ответить
27. boolean 28 28.06.13 23:21 Сейчас в теме
Почитал Вашу жаркую дискуссию.
Ничего нового я так и не увидел, все это можно организовать с помощью VBS или CMD + nncron, но для других думаю будет полезно. Плюс за старание =)
28. MORT32Ram 17 30.04.15 08:03 Сейчас в теме
Спасибо за программу. Было бы замечательно если бы она еще и паролила архивы, указанным в настройках паролем.
Для отправки сообщения требуется регистрация/авторизация