Скрипт VBS для автоархивации баз 8.2 (для многопроцессных кластеров) v.1.2

13.10.11

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

Скрипт для автоархивации базы с блокировкой  и отключением пользователей (для каждого рабочего процесса) + перезагрузка сервиса 1с

Скачать файлы

Наименование Файл Версия Размер
скрипт v.1.2 (1с8.2)
.vbs 8,41Kb
54
.vbs 8,41Kb 54 Скачать
Все скрипты одним архивом
.rar 9,08Kb
197
.rar 9,08Kb 197 Скачать
скрипт
.vbs 6,44Kb
193
.vbs 6,44Kb 193 Скачать
скрипт v.1.1
.vbs 7,88Kb
353
.vbs 7,88Kb 353 Скачать

Этот скрипт развитие этой темы

http://www.infostart.ru/public/19722

также использовались наработки из

http://www.infostart.ru/public/63466

и

http://www.sql.ru/forum/actualthread.aspx?bid=63&tid=507764&pg=3

Мной данный скрипт используется для сохранения недельных архивов

А теперь собственно описание алгоритма работы скипта:

1. Уведомление юзеров о начале регламентных работ

2. Установка блокировки подключений на базу

3. Отключение конектов юзеров к нужной базе ДЛЯ КАЖДОГО ИЗ РАБОЧИХ ПРОЦЕССОВ

4. Выгрузка архива базы

5. Проверка наличния выгруженого архива

6. Удаление старых архивов базы

7. Снятие блокировки на подключение к базе.

8. Уведомление администратора о выгрузке и объеме свободного места на диске архива через нет сенд

9. Перезагрузка сервиса сервера 1с8.1 (рагент)

10. Уведомление администратора о удачной или неудачной перегрузке сервиса 1с8.1 через нет сенд

 

Здесь собрано множество ссылок  на подобные разработки часть которых я использовал, поэтому отдельное спасибо alexk-isза проделаную работу.

В следующем варианте скрипта хочу прикрутить еще тестирование  исправление базы.

Также использую сокращенный вариант скрипта для ежедневных выгрузок.

В НОВОЙ ВЕРСИИ от 25.01.10

ДОБАВЛЕНЫ:

1. Проверка на создание архива, в противном случае удаление не происходит.

2. Код для перезагрузки сервиса 1с

ИЗМЕНЕНЫ:

1. Переменные вынесены в начало скрипта

2. Последовательность создания и удаления архивов баз

В НОВОЙ ВЕРСИИ от 10.10.11

Добавлен варианты скрипта для 1с8.2

 

См. также

Журнал изменений с восстановлением состояния ссылочных объектов и архивацией по HTTP / COM (расширение + конфигурация, 8.3.14+, ЛЮБАЯ конфигурация)

Архивирование (backup) Журнал регистрации Поиск данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

База данных «сама» меняет данные в документах/справочниках? Тогда данный журнал изменений для Вас! Практически не влияет на скорость записи объектов за счет быстрого алгоритма! Скорость работы почти в 2 раза выше типового механизма "История изменений"! Позволяет следить за изменениями и удалением в любых ссылочных объектах конфигурации, с возможностью архивации по HTTP(!) или COM, и сверткой данных. А так же, может восстановить состояние реквизитов (значения) до момента изменения или удаления объекта из базы. Есть ДЕМО-база где можно самостоятельно протестировать часть функционала! Работает на любых платформах выше 8.3.14+ и любых конфигурациях! Версия 3.1 от 24.08.2023!

19200 руб.

15.05.2017    42522    10    24    

38

BackUPv8 - система резервного копирования баз 1С

Архивирование (backup) Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Автоматическое создание копий файловых и серверных информационных баз 1С Предприятие 8 и размещение копий в облаке Яндекс.Диск, локальном или сетевом ресурсе.

1200 руб.

03.09.2014    14733    13    6    

18

Резервное копирование журнала транзакций, наконец-то!

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

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

04.12.2023    5877    n_mezentsev    15    

25

Резервное копирование и восстановление 1С баз на PostgreSQL в Windows с помощью pgAdmin, bat-файлов и планировщика

Архивирование (backup) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной инструкции будет описано, как с помощью pgAdmin, bat-файлов и планировщика заданий Windows организовать резервное копирование, восстановление и хранение копий баз данных.

07.10.2022    19834    sapervodichka    36    

142

Архивирование базы в dt и дамп postgres

Архивирование (backup) Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Захотелось клиентам выгрузку архива баз, и выгрузку в дт, готовые скрипты с сети не заработали. Может, кому-то поможет. Релиз 8.3.18.1741.

1 стартмани

25.08.2022    4719    2    Gnom-Gluck    6    

6

Утилита копирования баз данных 1С

Архивирование (backup) Платформа 1С v8.3 Абонемент ($m)

Небольшая утилита для копирования файловых баз данных 1С.

1 стартмани

02.06.2022    4236    3    Giblarium    12    

5
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. rebuzx 162 11.01.10 21:17 Сейчас в теме
2. Asis 13.01.10 10:30 Сейчас в теме
Думаю что удаление старых архивов базы (шаг 4) нужно делать в последнюю очередь.
Иначе есть вероятность (пусть небольшая но есть), что не окажется ни одного архива в случае сбоя на последующих шагах.
dred2001; +1 Ответить
3. dred2001 47 13.01.10 11:36 Сейчас в теме
(2). Да согласен.
В следующей версии добавлю проверку на создание файла выгрузки
а после этого только удаление устаревших.
4. a-novoselov 1155 14.01.10 19:00 Сейчас в теме
Отличный скрипт, ежедневные архивы делает наура! Маленькое пожелание на использование путей из переменной вначале, а так просто супер. Спасибо огромное.
5. dred2001 47 25.01.10 18:08 Сейчас в теме
Обновил скрипт.
Старался учесть все пожелания.
От себя добавил перегрузку сервиса 1с.
Кстати хочу посоветоваться.
Стоит ли добавлять в скрипт код для тестирование исправление базы?
Сейчас у меня для тестирование исправление работает батник вот и думаю в отдельный скрипт его переделать или включить в состав этого.
Какие будут предложения?
8. a-novoselov 1155 05.02.10 08:07 Сейчас в теме
(5) Лучше тестирование исправление отдельным скриптом делать.
(6) Тоже было разок, добавил:
If UCase(InfoBase.Name) = UCase(BaseName) Then
    ' Устанавливаем запрет на подключение новых соединений
    InfoBase.ConnectDenied = True
    InfoBase.DeniedFrom = CStr(Now())
    InfoBase.DeniedTo = CStr(Now() + 1 / 12)
    InfoBase.DeniedMessage = LockMessageText
    InfoBase.PermissionCode = LockPermissionCode
    WorkingProcessConnection.UpdateInfoBase (InfoBase)
    WScript.Sleep(200000)
End If
Показать

Но еще раз сегодня архив не выгрузился :( . Можно добавить блокировку регламентных заданий на время выгрузки и количество попыток?
Кстати, неотработавшее задание висит как "Задание выполняется в настоящее время (0х41301)".
9. dred2001 47 07.02.10 01:45 Сейчас в теме
(8) Да для универсальности можно добавить блокировку регламентных заданий. У меня они с выгрузкой базы пока не пересекаются но на будущее думаю не помешает.
А количество попыток обязательно добавлю, сам в этой необходимости уже убедился.
6. dred2001 47 29.01.10 13:38 Сейчас в теме
У меня один раз сервис 1с не стартонул, пришлось вручную запускать.
Скорей всего нужно увеличить время задержки между запуском сервиса и его опросом.
В следующей версии добавлю возможность задавать количество попыток запуска сервиса 1с.
7. Kiber_ 03.02.10 12:05 Сейчас в теме
Чудненько! Как раз искал подобный скрипт...
Недельку потестю, потом напишу более весомый отзыв.

А пока огромное спасибо :)
10. Kiber_ 11.02.10 15:04 Сейчас в теме
Итак, протестил скрипт.
В целом - отлично. Автору огромное спасибо.
11. kote 536 17.02.10 09:10 Сейчас в теме
Не получилось использовать весь скрипт на Win2008 Server.. Пришлось убирать часть кода, отвечающую за "выгон" пользователей из БД SQL.. Не смог разобраться в причине :( Одни догадки..
==
Кто нибудь на такой ОС успешно воспользовал весь функционал?
13. a-novoselov 1155 18.02.10 12:54 Сейчас в теме
(11) У тебя наверное на сервере COM соединение не установлено.
а вообще продолжение темы: http://infostart.ru/public/65849/
12. Kiber_ 18.02.10 08:46 Сейчас в теме
to kote: Ты-бы написал, какую ошибку выдает VBScript...
14. igor_gk 49 19.03.10 12:06 Сейчас в теме
Прошу прощения за тупость, не ругайте плз, просто объясните...
Что такое, для чего?
....
'Код блокировки базы
LockPermissionCode = "1111"
....
15. dred2001 47 21.03.10 23:47 Сейчас в теме
(14) Согласен формулировка в комментарии "'Код блокировки базы "не совсем точна,
имелось ввиду код разблокировки базы т.е. если указать параметр с этим кодом то вы получите доступ к базе при установлено блокировке, например "C:\Program Files\1cv81\bin\1cv8.exe" DESIGNER /UC 1111
16. Confucius 81 25.05.10 07:49 Сейчас в теме
Не работает скрипт почему то. Базу блокирует всех выгоняет. Пишет начало в лог. базу не выгружает. Проходит час блокировка снимаеться. Server 2008 Sp2 32 бит. Что может быть?
17. irteg 22.09.10 09:20 Сейчас в теме
если у пользователя не задан пароль, то остается окно авторизации пользователя
если имя пользователя содержит пробел, то некорректно сопоставляется пользователь при запуске
18. fomix 33 13.10.11 12:53 Сейчас в теме
А нельзя ли выложить все 3 скрипта в архиве???? Заранее спасибо!
19. a31 26.10.11 18:51 Сейчас в теме
dred2001 пишет:
dred2001 25.01.10 18:08 URL ↓Цитата ↓Ответить

Обновил скрипт. Старался учесть все пожелания. От себя добавил перегрузку сервиса 1с. Кстати хочу посоветоваться. Стоит ли добавлять в скрипт код для тестирование исправление базы? Сейчас у меня для тестирование исправление работает батник вот и думаю в отдельный скрипт его переделать или включить в состав этого. Какие будут предложения?

Спасибо огромное за сей продукт!
Скачал, потестим, но надеюсь, что все отлично будет.
Спасибо еще раз!
20. GreenFox 15.11.11 12:08 Сейчас в теме
Чтото у меня не заработало. Один раз по расписанию скрипт заработал, а после начал зависать, хотя может что-то я сам ошибся при изменении путей запуска 1с и папок в которые архивируется база.
21. Asaqura 05.12.11 01:23 Сейчас в теме
sql база. как будет работать?
22. dred2001 47 05.12.11 12:09 Сейчас в теме
(21) Asaqura, Нормально.
Скрипт как раз и предназначен для работы с серверным вариантом.
23. zhleonid8 28.01.12 21:48 Сейчас в теме
заточен под сетевую?..............
24. пользователь 03.08.12 12:28
Сообщение было скрыто модератором.
...
25. vitalyok 26.04.13 22:39 Сейчас в теме
Не удается скрипт запустить. 1.1 жалуется на строку 232 символ 2, содержимое строки Set File = FSO.GetFile(file)

Что я делаю не так, с учетом того что указываю пути на существующие папки?

UPD: Прошу прощения, не было прав на запись в ту папку. ток всё равно с ошибкой падает, какой то другой теперь, но разбираться буду позднее, пора спать.
26. AlexO 135 21.02.15 22:35 Сейчас в теме
(0)
В следующем варианте скрипта хочу прикрутить еще тестирование исправление базы.
А зачем этот швейцарский нож? На каждом этапе могут быть многочисленные ошибки/проблемы, которые полностью поставят крест на всем архивировании. Тем более, ТИИ, которое вообще может не пройти.
И тем более, выгрузка в DT крайне ненадежная сама по себе. А тут - масса операций с непредсказуемым результатом, выполняемых в автоматическом режиме!
А само создание архива 1С через скрипт - одна строчка.
Оставьте свое сообщение