Автоматическое сохранение базы штатными средствами

Публикация № 565089

Администрирование - Администрирование данных 1С - Архивирование (backup)

Всё началось с того, что я лентяй. Когда пришел на работу в первый раз, мне сообщили, что уже лет 10 делают сохранение  базы каждый день в конце рабочего дня. Из этого вытекает, что  если кто-то решит подтянуть свои хвосты, то мне приходится сидеть на работе тоже. Честно, мягко говоря, меня это не особо радовало... Порывшись на просторах инета, было принято решение сделать "автосохранялку". Как уже говорилось, "Я ЛЕНИВЫЙ", поэтому мне было попросту лень ставить всякие утилиты и программки, реализовал все штатными средствами.

Прилагаю два файла

1. save.cmd

а) завершает все процессы 1С у всех пользователей терминала, запускает конфигуратор 1С 7.7 в пакетном режиме с параметрами

б) определяет текущую дату

в) копирует сохраненный архив (Arh.zip) в нужную мне папку (в ней у меня хранятся все дампы), это D:\Arhiv\2016

г) перейменовывает файл архива с "Arh.zip" в  чтото вроде этого "2016-11-30-AS_2016.zip"

д) удаляет "Arh.zip" с текущей папки

Содержимое файла:

taskkill /im 1cv7.exe* /f
start /W /D "C:\Program Files\1Cv77\BIN\" 1cv7.exe config /D "D:\1s\2016" /NUser  /PPassword /@D:\Autosave\arc.prm

@echo off
:: Code by Herbert Kleebauer
echo Bj@jzh`0X-`/PPPPPPa(DE(DM(DO(Dh(Ls(Lu(LX(LeZRR]EEEUYRX2Dx=>d_t.com
echo 0DxFP,0Xx.t0P,=XtGsB4o@$?PIyU WwX0GwUY Wv;ovBX2Gv0ExGIuht6>>d_t.com
echo LisqMz`wGH@wKuur`G@w?ogBgGG}G?j_egoNOG?w?`gBLksqgG`w?WgBgG>>d_t.com
echo G}G?R_MgoNMy?wSx@W?s?W?@zAB`LrFuBLyt~vuco{@LuKooD?BFHqrIcP>>d_t.com
echo _sdDxb1T??=?rILO_sdDqx1T??=?rILO_sdDnl1T??=?rILO_sdD`c1T??>>d_t.com
echo =?rILO_sdDgg1T??=?rILO_sdDll1T??=?rILO_sdDrr1T??=??IL?0xxx>>d_t.com

FOR /F "delims=" %%i IN ('d_t.com') DO %%i
del d_t.com

echo century: %_cy%
echo    year: %_yr%
echo   month: %_mo%
echo     day: %_da%
echo    hour: %_hh%
echo  minute: %_mm%
echo  second: %_ss%
echo     all: %_cy%%_yr%-%_mo%-%_da% %_hh%:%_mm%:%_ss%
echo.
echo         %DATE% %TIME%
copy D:\Autosave\arc.zip D:\Arhiv\2016\arc.zip
del D:\Autosave\arc.zip 
rename "D:\Arhiv\2016\arc.zip" %_cy%%_yr%-%_mo%-%_da%-AS_2016.zip

2. arc.prm - файл параметров конфигуратора в пакетном режиме. Там указано, что нужно сделать сохранение базы, сделать переиндексацию и закрыть конфигуратор, можно добавить любые пункты из меню "Тестирование и исправление БД". также в этом файле прописано в какую папку сохранится файл архива и как он будет называться (у меня это D:\Autosave\Arc.zip), собственно в этой же папке хранится и первый файл.

Содержимое файла:

; - Комментарий т.е. любой текст не обрабатывается программой 1С
;заглавные общие параметры
[General]
     ;Имя файла с отчетом
Output= D:\Autosave\Arc.txt
Quit=1                    ; Закрывать 1С после выполнения задания
CheckAndRepair=1          ; Выполнять тестирование и исправление БД
UnloadData=0             ; Делать выгрузку данных (НЕ автообмен, а первую выгрузку!!!)
SaveData= 1            ; Делать архив БД
AutoExchange=0         ; Делать автообмен

;параметры тестирования и восстановления
[CheckAndRepair]

Repair=0              ; соответствуют галочкам в диалоговом окне при выборе
PhysicalIntegrity=0   ; в конфигураторе "Тестирования и исправления БД
Reindex=1
Logicalintegrity=0
RecalcSecondaries=0
RecalcTotals=0
Pack=0
;SkipUnresolved=
;CreatForUnresolved=
;Reconstruct=

;параметры выгрузки данных
;[UnloadData]   ; Рекомендую не использовать

;UnloadToFile=
;IncludeUserDef=
;Password=

;параметры сохранения данных в архиве
[SaveData] ; Имя файла для сохранения архива БД
; Имя файла архива
SaveToFile= D:\Autosave\Arc.zip    
;FileList=                   ; Имя файла со списком файлов для архивации

;описание параметров для работы с РИБ
[AutoExchange]

SharedMode=1 ; Выполнять автообмен в случае, если в БД кто-то сидит
;ReceiveFrom=* ; В случае автообмена посредством e-mail - адрес отправителя
ReadFrom=* ; Оставить путь к файлу для загрузки по умолчанию. Иначе - вписать нужный путь
WriteTo=*  ; Аналогично для выгрузки
;SendTo=*

P.S. запускать первый файл желательно от имени администратора в нужное время. Можно кинуть в назначение заданий сервера.

Все замечания и предложения по функционалу приветствуются. 

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

Наименование Файл Версия Размер
файлы

.zip 1,70Kb
5
.zip 1,70Kb 5 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. MadDAD 143 15.12.16 16:45 Сейчас в теме
Есть нюанс. d_t.com который создается при выполнении скрипта является 16-разрядным приложением и не сможет работать на х64 ОС.
2. mt111 3 21.12.16 18:03 Сейчас в теме
(1) %date%тебе в помощь, возвращает тек.дату в cmd
4. MadDAD 143 22.12.16 08:28 Сейчас в теме
(2) Так мне и не надо, это у тебя же в батнике начиная отсюда ":: Code by Herbert Kleebauer" создается com-файл. Только работать будет не везде. Поэтому нужно в описании разработки предупредить что "не работает на X64"
3. 1qazxsw21QAZXSW2 3 21.12.16 18:24 Сейчас в теме
Перебори свою лень 1 раз и настрой все нормально
6. mt111 3 22.12.16 11:57 Сейчас в теме
(3) для нашего сервачка-старичка этого вполне хватает.
А вообще вариантов бекапов масса, и каждый выбирает для себя и под свои нужды, материал выставлен в ознакомительных целях, Архивирование проходит без проблем и на х32 и на х64, а уж что делать с архивом это уже личное дело каждого, как его назвать, куда его положить и что с ним делать дальше
7. v3rter 22.12.16 12:48 Сейчас в теме
(6)
Согласен. По нынешним меркам объемы баз 7.7 настолько невелики, что на выбор архиватора и способа архивации стоит тратить время только при количестве баз от 10.

Думаю, вместо
start /W /D "C:\Program Files\1Cv77\BIN\" 1cv7.exe
лучше будет
start /W /D "" "C:\Program Files\1Cv77\BIN\1cv7.exe"
или
start /W /D "" "%programfiles%\1Cv77\BIN\1cv7.exe"

В своей практике в начале батника обычно прописываю все пути и некоторые параметры в переменные через SET. Это чтобы не искать их потом по всему коду и не тратить время на "найти-заменить".
8. mt111 3 23.12.16 09:21 Сейчас в теме
(7) по поводу переменных - дельное предложение, весьма упростит некоторые моменты
5. v3rter 22.12.16 09:51 Сейчас в теме
Нагуглил другой способ извлечения даты-времени http://stackoverflow.com/questions/203090/how-to-get-current-datetime-on-windows-command-line-in-a-suitable-format-for-us
и переделал

for /F "usebackq tokens=1,2 delims==" %%i in (`wmic os get LocalDateTime /VALUE 2^>NUL`) do if '.%%i.'=='.LocalDateTime.' set ldt=%%j
set ldt=%ldt:~0,14%
echo Local date is [%ldt%]

На выходе будет Local date is [20161222094850]

Переделать исходный скрипт можно, например, так:
rename "D:\Arhiv\2016\arc.zip" %ldt%-AS.zip

Для 1C 7.7 эффективнее будут разностные архивы 7zip, так как 80% архива - пакеты регламентной отчетности прошлых годов.
http://dkrichun.blogspot.ru/2012/07/7-zip.html
Один раз в неделю (в выходные) создавать полный архив каталога:
7z a "D:\Backup\full.7z" -r "C:\Data"

Ежедневно (по рабочим дням) создавать разностный архив:
7z u "D:\Backup\full.7z" -r -u- -up0q3x2z0!"D:\Backup\diff-%date%.7z" "C:\Data"

При этом:
Полный архив изменяться не будет, благодаря опции -u-.
Если файл попал в полный архив, но к моменту создания разностного архива был удален из исходного каталога, он будет удален при распаковке разностного архива поверх полного, за это отвечает опция q3.
Если файл в исходном каталоге старее чем файл в полном архиве (не важно, по какой причине), он будет добавлен в разностный архив и при его распаковке поверх полного архива заменит более новый, за это отвечает опция x2.

7z a -mx0 "C:\Backup\dimas\docs.7z" -r "D:\Users\dimas\Documents"
7z a -mx0 "C:\Backup\dimas\pics.7z" -r "D:\Users\dimas\Pictures"
7z a -mx0 "D:\Backup\dimas\gdisk.7z" -r "C:\Users\dimas\Google Диск"

7z u -mx0 "C:\Backup\dimas\docs.7z" -r -u- -up0q3x2z0!"C:\Backup\dimas\docs-%date%.7z" "D:\Users\dimas\Documents"
7z u -mx0 "C:\Backup\dimas\pics.7z" -r -u- -up0q3x2z0!"C:\Backup\dimas\pics-%date%.7z" "D:\Users\dimas\Pictures"
7z u -mx0 "D:\Backup\dimas\gdisk.7z" -r -u- -up0q3x2z0!"D:\Backup\dimas\gdisk-%date%.7z" "C:\Users\dimas\Google Диск"
Показать
Кстати, тот же случай, когда вместо %date% удобнее будет использовать %ldt% из примера выше.

Можно еще попробовать Cobian Backup. По личному опыту для кобиана на диске с базами надо включать теневое копирование (защиту системы).
9. v3rter 27.12.16 11:54 Сейчас в теме
Собственно, сейчас у большинства архиваторов есть ключи типа "добавить дату к имени архива", но было интересно решить задачу получения даты-времени средствами bat-языка.
Оставьте свое сообщение

См. также

Бэкапер-1С: резервные копии бухгалтерии (1С 7.7 - 8.3) Промо

Архивирование (backup) v7.7 v8 1cv8.cf 1cv7.md Абонемент ($m)

Бэкапер-1С: версия 1.5.0. Появилась гибкая система удаления старых копий! А также: автоматический поиск баз, архивация документов, встроенный архиватор 7-Zip, целостность создаваемых копий, шифрование, отправка отчетов на почту и каталогизация. Ещё никогда резервное копирование не делалось так просто.

1 стартмани

16.05.2013    64212    630    alexey.karmanov    181    

Архивирование базы 7.7

Архивирование (backup) v7.7 1cv7.md Абонемент ($m)

Программа, написанная на Delphi7 для автоматизации сохранения БД.

1 стартмани

02.01.2017    12163    11    mt111    21    

Простые вещи: Делаем архив базы 1С за 30 секунд

Архивирование (backup) v7.7 v8 1cv8.cf 1cv7.md Абонемент ($m)

Архив файловой базы 1С можно сделать за 30 секунд. Делаем предварительные настройки.

1 стартмани

09.12.2014    30868    12    denisk37    72    

Архивация баз средствами командной строки Windows и архиватора Izarc, также скрипт для Linux.

Архивирование (backup) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m)

Архивация баз данных 1С 7.7 (при небольшом редактировании и версий 1С 8.х) средствами командной строки и архиватора Izarc Архивация каталога базы данных при размещении на Linux (smb-сервере к примеру) средствами linux.

1 стартмани

11.05.2012    10906    16    slava81    5    

Архивация 1сv7

Архивирование (backup) openconf v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m)

Обработка при помощи WinRar архивирует каталог с БД.

1 стартмани

06.04.2012    9847    34    l2d808    20    

Архивация списка баз 1С:Предприятие 7.7

Архивирование (backup) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m)

Быстрая архивация списка баз 1С:Предприятие 7.7 в файл реестра.

1 стартмани

19.02.2012    10083    26    alexkrv    4    

Автоматическое архивирование файловых баз 1С, в том числе заблокированных по сети

Архивирование (backup) v7.7 v8 1cv8.cf 1cv7.md Россия Абонемент ($m)

Архивация файловых баз 1с, в том числе заблокированных по сети другими пользователями. С использованием программы Egida Backup. и NetFilesShowAndClose

28.01.2011    18163    0    1cmax    9    

Архивирование баз 1C с помощью CMD-скрипта+7zip

Архивирование (backup) v7.7 1cv7.md Россия Абонемент ($m)

Еще одно решение по архивированию инфомационных баз 1С с помощью CMD-скрипта и программы архиватора. В данном решении применен архиватор 7-ZIP. Возможности решения: - Имя файла создаваемого архива включает в себя дату и время создания архива. - Возможность архивирования без выхода пользователей из информационной базы 1С — архивирует одновременно и паралельно с работой пользователей т. к. открывает файлы базы в разделенном режиме. - Формат архива – 7z. - Выполняется рассылка созданного архива в другие ресурсы(папки) хранения архивов, кроме основного, в локальном компьютере (сервере) и в локальной сети (в другие компьютеры или серверы). - Выполняется внесение записей в log-файл. - В exclude.set задаются расширения файлов, исключаемые из архивирования. - Настройка выполняется правкой CMD-скрипта, внесением в команды скрипта своих значений и данных о: пути к информационной базе(базам) 1С; пути к папке хранения архивов 1С; пути (путям) резервного хранения архивов 1С (локуальным и/или сетевым); Имени информационной базе(базам) 1С; Править CMD-скрипт для настройки на ахивирование Вашей информационной базы 1С придется в нескольких местах, т.к. не удалось задать архиватору параметры архивирования в командной строке с помощью переменных окружения сеанса ДОС.

1 стартмани

22.01.2011    20271    271    provadyuga    6    

Архиватор баз данных

Архивирование (backup) v7.7 1cv7.md Россия Абонемент ($m)

Архиватор баз данных 1С 7.7 (для формата DBF)

1 стартмани

13.01.2011    11810    108    ReLock    7    

1C ZIPACKER - Небольшой ZIP-упаковщик файловых баз v7.7

Архивирование (backup) v7.7 1cv7.md Россия Абонемент ($m)

Часто перед либо после изменения конфигурации сохраняю всю директорию с файловой базой 1С v7.7. в архив ZIP.

01.01.2011    12830    23    Parazyte    26    

Архивация расчетных документов (ЗИК 7.7)

Архивирование (backup) Зарплата Зарплата v77::Расчет 1cv7.md Россия БУ Абонемент ($m)

После мягкой смены периодов расчетов - пиктограммки расчетных документов остаются "незатененными". Для исправления этого безобразия - можно либо вернуться в прошлый период, и перейти в текущий обычным образом... и пересчитать весь период заново. Либо просто установить признак архивности с помощью этой обработки.

1 стартмани

09.10.2010    10421    33    Natalia    3    

Резервирование базы - Rar-архивирование и создание вторичной копии

Архивирование (backup) v7.7 1cv7.md Россия Абонемент ($m)

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

1 стартмани

30.06.2010    15352    133    mikelangello    13    

Автоматическая архивация баз данных 1С 8.2, 8.1 и 7.7

Архивирование (backup) v7.7 v8 1cv8.cf 1cv7.md Россия Абонемент ($m)

Автоматическая архивация баз данных 1С 8.2, 8.1 и 7.7 без установки дополнительного ПО. Удаление устаревших архивов, дублирование ежемесячное в другой каталог, отправка на e-mail письма о работе скрипта (каждый раз или после аварийного завершения), максимально подробный лог-файл. С обновления от 14.07.2010 поддержка 1С 8.2 !!!

1 стартмани

21.06.2010    76724    4130    roskmv    167    

Архивирование базы 1C. Автоматическое создание .bat файла и запуск по расписанию (Украинский и Русский интерфейс)

Архивирование (backup) v77::ОУ v77::БУ v77::Расчет 1cv7.md Украина Россия Абонемент ($m)

Создание в несколько кликов, все параметры подробно описаны, в большинстве случаев подойдут настройки по умолчанию

1 стартмани

19.03.2010    15230    9    Cos_i    9    

Полезняшка: Архиватор

Архивирование (backup) v7.7 1cv7.md Россия Абонемент ($m)

Обработка для создания архива всех файлов базы данных. Проста в использовании и настройках удобна в работе.

10 стартмани

09.12.2009    20597    450    GSoft    9    

Несколько полезных скриптов для SQL

Архивирование (backup) v7.7 1cv7.md Россия Абонемент ($m)

Полезные на мой взгляд sql-скрипты, которыми сам периодически пользуюсь...

27.10.2009    18035    572    sanches2    16    

Автосохранение базы данных DBF с работающими пользователями.

Архивирование (backup) v77::БУ 1С7:Бух Россия Абонемент ($m)

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

1 стартмани

11.09.2009    10460    88    TSvetlakova2008    23    

Автоматическое архивирование

Архивирование (backup) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m)

Еще один вариант создания батничка для автоматического архивирования баз 7.7

18.08.2009    13861    218    Mopo3    13    

Обработка для архивирования текущей (открытой) DBF-базы 1С7.7

Архивирование (backup) v7.7 1cv7.md Абонемент ($m)

Обработка для архивирования текущей (открытой) DBF-базы 1С7.7 Прошу сильно не пинать. Написано от безделья :) Код абсолютно открыт.

1 стартмани

07.08.2009    12663    94    Parazyte    7    

Автоматическое обновление 1С:Предприятие 7.7

Сервисные утилиты Архивирование (backup) v7.7 1cv7.md Россия Абонемент ($m)

Получение обновлений для всех конфигураций 1С:Предприятие 7.7 через Интернет. Резервное копирование данных. Обновление в автоматическом режиме всех конфигураций 1С:Предприятие 7.7.

1 стартмани

22.07.2009    18534    415    spacc    28    

Небольшой батничек сохранения базы

Архивирование (backup) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m)

Очень простой скрипт. Любой пользователь сможет самостоятельно разобраться - в начале файла полное его описание (в проводнике правой кнопкой мыши - "Изменить"). noBackUp - список исключаемых файлов.

1 стартмани

11.11.2008    12914    1529    jmw    16    

Еще один скриптик для сохранения dbf баз с помощью архиватора. Коротенько (5 строк!) и работает ;) ТЕПЕРЬ 3 строки!!!

Архивирование (backup) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m)

Работает на Win XP,2003 и далее. Хорошо запускается из планировщика. В результате получается архив с именем что-то типа arc2008-09-17-17-14 Стало актуальным в свете борьбы за легальность софта - 7-zip бесплатен и отлично работает, больше ничего не требуется.

1 стартмани

17.09.2008    11800    959    const000    13    

Мх Архививирование

Архивирование (backup) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m)

Архивирование со стековым хранением архивов, восстановление индексов, восстановление границы последовательности проведения документов для баз данных 1С:Предприятие v7.7 Рекомендуем, очень полезная прога!!!

1 стартмани

23.03.2007    8297    457    mix777    3    

Архивирование конфигурации 1С 7.7 не в монопольном режиме, по расписанию, блокировка работы пользователей

Архивирование (backup) v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Абонемент ($m)

Система архивирования базы DBF. Требуется встраивание данной конфигурации в Вашу базу. Система архивирования базы DBF обладает следующими свойствами: - настройка периодичности копирования с последующим архивированием настраивается в самой базе, в результате копирование и архивирование происходит только тогда, когда кто-то работает в базе. - копирование базы может производит любой пользователь работающий с этой базой, с последующим архивированием на файл-сервер, в результате если даже один человека работает в базе (изменяет данные), то архивирование будет произведено. - при копирование работа всех пользователей блокируется, в результате поддерживается целостность сохраняемых данных. - внешние компоненты не используются. - ведется полный лог архивирования и лог ошибок. - монитор пользователей, система сообщений, выгонялка из базы от SpellKeeper'a (Thank you).

1 стартмани

10.03.2006    19492    530    support    3