Создание архива информационной базы

02.10.12

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

Архив баз 1С8 - это очень просто. Нажал на иконку и архив готов. В папке архива - всегда до 90 версии с указанием даты записи. И все это - простой набор cmd-пакетов.

Скачать исходный код

Наименование Файл Версия Размер
Cmd-пакеты
.zip 750,94Kb
49
.zip 750,94Kb 49 Скачать
Новая версия архива (УЖЕ с "выгонялкой")
.zip 754,70Kb
55
.zip 754,70Kb 55 Скачать
Статья
.pdf 759,37Kb
9
.pdf 759,37Kb 9 Скачать

ЭТО СТАТЬЯ ЕСТЬ в АРХИВЕ 

 

Архив баз 1С8 - это очень просто!?

Введение

Создать архив баз данных в 1С7.7 было очень просто с помощью программки LockAndCopy Алексея Калядина из ООО «Активные Торговые Технологии» г. Москва. В 1С8  этот фокус не проходит: нет DBF-файлов, поэтому нужно пользоваться для создания архива командой:

 

"C:\Program Files\1cv82\%Bep1C%\bin\1cv8.exe"  DESIGNER
           /SSERVER1\Src
 /NАДМИН /P7913
 /DumpIBDump.dt
 /Visible

где         SERVER1 – имя кластера серверов 1С:Предприятие 8,
              Src         - имя информационной базы в кластере,
              АДМИН   - пользователь 1С8 с правами администратора базы
              7913      - его пароль для доступа базе 1С
              Dump.dt  - файл с архивом базы 1С с сервера,

А для записи локальной копии базы на Ваш ПК из файла  Dump.dt следующей командой:


 

"C:\Program Files\1cv82\%Bep1C%\bin\1cv8.exe"  DESIGNER
               /FDest  
/NАДМИН /P7913
/RestoreIBDump.dt
/Visible
 
где      Dest      - имя папки локальной копией информационной базы на ПК,
           АДМИН    - пользователь 1С8 с правами администратора базы
           7913      - его пароль для доступа базе 1С
           Dump.dt  - файл с архивом базы 1С с сервера,

Эти две команды - ОСНОВА пакета cmd-файлом для создания архивов баз данных (см.файл Save_C8.cmd )

Настройка пакета Save_C8.cmd

После сохранения пакета на Ваш ПК его нужно разархивировать в любую папку. У нас это папка

C:\MyDocs\1C\ПРАВКА\_АРХИВ_

Затем открываем файл Save_C8.cmd и находите следующие две строки

SET APXIB=\\SERVER1\Install\1C\Фирма 1С\1С 8.2\АРХИВ
SET Bep1C=8.2.16.352

В первой строке после символа «=» указываем путь к папке архиву на сервере. В этой папке будем хранить последнюю копию архива. А во второй – номер версии из названия папки с 1С8 (Смотри Рис. 1)

Поясним наши действия на этом рисунке:

  1. Запускаем из меню «Пуск» в режиме «Запуск программы» CMD
  2. Переходим к папке C:\Program Files\1cv82 командой (1)
  3. Набираем Dir (2) и смотрим (3)
  4. Записали (3) и набрали Exit

PS.  Это один из способов определить нужный нам номер версии. Есть куча других, но указал этот – работает всегда и везде.

 

Рис. 1

Если у Вас НЕ на всех машинах, где будет использоваться этот пакет, ЕСТЬ диск D:,  то заменить эго в файле на C: НО ЛУЧШЕ, КОГДА архив баз 1С на отдельном диске

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


if Exist "%dest%" goto fi08
     @echo Создаем папку %dest%  ...
      md "%dest%"
      if Exist "I:\1C\1C\Пустая"  @echo ^   ... копируем файлы:                                              .
      if Exist "I:\1C\1C\Пустая"  xcopy "I:\1C\1C\Пустая\*.*" "%dest%" /S
      if Exist "I:\1C\1C\Пустая"  @echo ^                                                                    .
:fi08

Заменить путь к пустой базе 1С папка «I:\1C\1C\Пустая» на сервере на Вашу папку с ПУСТОЙ базой. Если не знаете, как сделать ПУСТУЮ базу, то скопируйте из архива. ЭТОТ КУЧОК ИЗ СЕМИ СТРОК  НУЖЕН для создания папки под копию базы на ПК-архиве.

 И ПОСЛЕДНИЙ ШАГ ПО НАСТРОЙКЕ ПАКЕТА Save_C8.cmd – указать имя (в файле АДМИН) и пароль (7913) администратора баз данных 1С  плюс имя кластера 1С(SERVER1). Т.е. нужно заменить эти параметры своими в следующих строках (Смотрите синтаксис этих команд во введении)


 

"C:\Program Files\1cv82\%Bep1C%\bin\1cv8.exe" DESIGNER
                /SSERVER1\%src%
 /NАДМИН /P7913
 /DumpIB%Dump%.dt
 /Visible

Это одна строка пакета без переноса строк создает АРХИВ


"C:\Program Files\1cv82\%Bep1C%\bin\1cv8.exe" DESIGNER

           /F%dest%

           /NАДМИН /P7913

           /RestoreIB%Dump%.dt

           /Visible

А это вторая строка пакета для создания копии базы на ПК из файла АРХИВА


 

Создание рабочих пакетов

В папке с файлом Save_C8.cmd Вы можете найти файл с примером создания  архива ЗАРПЛАТЫ для фирмы ООО «Услуги» _ЗиК_Услуги_ООО.cmd.   Поясним назначение переменных этого пакета и где можно найти информацию:

@echo off
set src=USLZ2010
set Dump=ЗиК_Услуги
set Dest=C:\MyDocs\1C\Зик_Услуги
set APX=USLz
 
call Save_C8 %1

Первая строка -  отключения режима отображения на экране информации о работе пакета  Вторая строка указано имя информационной базы в кластере 1С из настройки базы (Смотри Рис.2)

 

Рис.2

Третья строка указывает имя папки на Вашем ПК, где будет храниться копия рабочей базы

 

Рис.3

В четвертой строке указан префикс архива Вашей базы в папке-архиве

set APX=USLz

 

 

Рис. 4

Создаете нужное Вам количество  cmd-файлов с и ВСЕ ГОТОВО

Указанные пакеты копируем в нужное место на ПК и пишем последний cmd-файл,  если баз   1С очень много. И этот файл уже указываем в планировщике заданий.

@echo off
@CLS
@echo ^  ^[]-------------------------------------------------------------------------------^[]
@echo ^   ^| Создание архивов ВСЕХ информационных баз 1С 8.2                               ^|
@echo ^   ^|                                                                               ^|
@echo ^   ^| Дата:%DATE%  ^ ^ ^ ^                                          (с) ООО КрайСС  ^|
@echo ^  ^[]-------------------------------------------------------------------------------^[]
SET CPAM=Y
SET APXIB=I:\1C\Фирма 1С\1С 8.2\АРХИВ
SET LogS=C:\MyDocs\1C\_Log_.txt
SET ErrC=C:\MyDocs\1C\.Errors.cmd
SET OnErr=C:\MyDocs\1C\OnError.cmd
 
if Exist "%ErrC%"        DEL   "%ErrC%"
if Exist "%OnErr%"       DEL   "%OnErr%"
 
PushD C:\
if Exist "C:\MyDocs\" goto fi06
   md "C:\MyDocs\"
:fi06
if Exist "C:\MyDocs\1C\" goto fi07
   md "C:\MyDocs\1C\"
:fi07
if Exist "%LogS%"        DEL   "%LogS%"
@echo ^@echo Off                                                     >%ErrC%
@echo ^@echo.  ^>^>%LogS%    >>%ErrC%
@echo ^@echo ======================================================================================== ^>^>%LogS%    >>%ErrC%
@echo ^@echo.  ^>^>%LogS%    >>%ErrC%
@echo ^@echo  Работа над ошибками при "Создании архива 1С 8.2"                       (с) ООО КрайСС   ^>^>%LogS%    >>%ErrC%
@echo ^@echo.  ^>^>%LogS%    >>%ErrC%
@echo ^@echo ======================================================================================== ^>^>%LogS%    >>%ErrC%
@echo ^@echo.  ^>^>%LogS%    >>%ErrC%
PopD
 
PushD D:\
if Exist "D:\1C архив\" goto fi09
   md "D:\1C архив\"
:fi09
if Exist "D:\1C архив\АРХИВ 1С8\" goto fi11
   md "D:\1C архив\АРХИВ 1С8\"
:fi11
PopD
 
@echo ^   Путь к копии ИБ:  %APXIB%\
@echo ^  Путь к АРХИВУ ИБ:  D:\1C архив\АРХИВ 1С8\
@echo ^                                                                    .
 
if Not Exist "D:\1C архив\АРХИВ 1С8\*.dt" goto error
  @echo Создаем копию ИБ : ...
  call Run_CMD _Авт_ККСС_ОАО
  call Run_CMD _Авт_КрайСС_ООО
  call Run_CMD _Бух_ККСС_ОАО
  call Run_CMD _Бух_ККСС_ООО
  call Run_CMD _Бух_КрайСС_ООО
  call Run_CMD _Бух_Крусар_ООО
  call Run_CMD _Бух_Услуги_ООО
  call Run_CMD _ЗиК_ККСС_ОАО
  call Run_CMD _ЗиК_ККСС_ООО
  call Run_CMD _ЗиК_КрайСС_ООО
  call Run_CMD _ЗиК_Крусар_ООО
  call Run_CMD _ЗиК_Услуги_ООО
  call Run_CMD _Тор_ККСС_ОАО
  call Run_CMD _Тор_ККСС_ООО
 
  if Exist "%ErrC%"        @rename "%ErrC%" OnError.cmd
 
  goto End
:error
  echo Ошибка программы или выход по требованию пользователя
:end
:Test_end

Выводы

Хотел коротко о главном – а получилось на 6 листах

Плюсы

1)       Просто – все делаем с помощью средств 1С и ОС MS Windows

2)       Можно создать  задание планировщику

3)       Есть отчет о ходе создания архива (Смотри ниже)

Минус

 Один,  но большой: НЕТ «выгонялки» для пользователей и фоновых заданий и т.п.

Планы

Написать и отладить примерно такой скрипт «выгонялку» на VBScript (Смотрите  идею у  Олега Филиппова в статье http://comol.livejournal.com/1614.html)

' Скрипт  удаляет Все  сеансы 1С

' Идея: Олег Филиппов

 

 Dim Connector

 Dim Agent

 Dim Cluster

 Dim WorkingProcess

 Dim Memory

 Dim Sessions

 Dim Session

 Dim iDuration

 

 Set Connector = CreateObject("V82.COMConnector")

 Set Agent = Connector.ConnectAgent("tcp://1c8")    'Имя сервера

 Set Cluster = Agent.GetClusters()(0)     '1 кластер в сервере

 Agent.Authenticate Cluster, "", "" 

 

 Set WorkingProcess = Agent.GetWorkingProcesses(Cluster)(0)  '1 Рабочий процесс в кластере

 

  Sessions = Agent.GetSessions(Cluster)

  For i = LBound(Sessions) To UBound(Sessions)

   Set Session = Sessions(i)    

   Agent.TerminateSession Cluster, session  

  next

 

Структура файла отчета  

========================================================================================

  Создание архива информ.баз 1С 8.2                                     (с) ООО КрайСС      

========================================================================================

 

    ПАРАМЕТРЫ ЗАПРОСА                                     

----------------------------------------------------------------------------------------

   Имя ИнфБазы 1С8:  USLZ2010                                 

     Файл выгрузки:  ЗиК_Услуги                               

   Путь к копии ИБ:  C:\MyDocs\1C\Зик_Услуги                               

                  :  \\SERVER1\Install\1C\Фирма 1С\1С 8.2\АРХИВ\                             

    Архив базы 1С8:  USLz                                 

        Версия 1С8:  8.2.16.352                              

----------------------------------------------------------------------------------------

   ОПИСАНИЕ ВЫГРУЗКИ                                                                   

----------------------------------------------------------------------------------------

Создаем файл выгрузки ЗиК_Услуги ...                     

Заменили имя файла на ЗиК_Услуги.dt0                           

Копируем файл ЗиК_Услуги в папку \\SERVER1\Install\1C\Фирма 1С\1С 8.2\АРХИВ ...          

Создаем копию ИБ в C:\MyDocs\1C\Зик_Услуги из файла ЗиК_Услуги ...     

Создаем архив  USLz_000.22.09.2012 ...               

----------------------------------------------------------------------------------------

<<< Готово >>>    АРХИВ  ЗиК_Услуги                                                   

----------------------------------------------------------------------------------------

  Дата:22.09.2012  Время:21:55:41,75    

 

См. также

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

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

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

21600 руб.

15.05.2017    42645    10    24    

38

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

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

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

1200 руб.

03.09.2014    14832    15    6    

18

Автоматическое резервное копирование любой клиент-серверной базы 1С в формате DT с удалением сеансов, архивацией, изменением расширения (8.3.14+, расширение)

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

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

6000 руб.

06.11.2012    70229    622    44    

80

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

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

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

04.12.2023    6269    n_mezentsev    15    

26

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

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

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

07.10.2022    20541    sapervodichka    36    

143

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

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

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

1 стартмани

25.08.2022    4810    2    Gnom-Gluck    6    

7
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Воронкин 22.09.12 16:27 Сейчас в теме
А чуть-чуть расширить описание обработки можно ???
Наименование архива, расширение и т.п....
+
6. Elis_VP 8 24.09.12 14:56 Сейчас в теме
(1) Чуть-чуть расширил описание
Прикрепленные файлы:
Архив баз 1С8.pdf
+
9. Воронкин 25.09.12 18:24 Сейчас в теме
(6) Elis_VP, Спасибо за описание, но как пользовался другими автоматическими архиваторами, так и пока буду. Они логически закончены.
+
13. Elis_VP 8 02.10.12 12:52 Сейчас в теме
(9) Игорь. Я Вас не понял?
ДОБАВИЛ НОВЫЙ ЧУТОК ДОРАБОТАННЫЙ ВАРИАН АРХИВА с выгонялкой

ПОКА ОПИСАНИЯ - НЕТ (Нет времени)

Состав АРХИВА

_1_Save_1C8.cmd - пакет для первой попытки создать АРХИВ 1С
_2_ON_ERROR.cmd - вторая попытка уже удалением USERов из 1С
_ЗиК_Услуги_ООО.cmd - пример описания базы данных (У нас таких пакетов - 14)
CloseDB.vbs - скрит для удаления USERов из 1С
Run_CMD.cmd - постенький доп пакет (не требует настройки)
Save_C8.cmd - ЯДРО ПАКЕТА

Архив баз 1С8.pdf - простое описание (добавил к этому сообщения)
Прикрепленные файлы:
Архив баз 1С8.pdf
+
2. w-divin 22.09.12 18:59 Сейчас в теме
а как обстоят дела с активными сессиями, фоновыми заданиями и т.п. ???
Elis_VP; +1
7. Elis_VP 8 24.09.12 14:59 Сейчас в теме
(2) w-divin, Да. Вы правы!! Смотрите статью в прикрепленном файле. В этой пупликации описана идея. Рабочая, но идея
+
3. zse 58 23.09.12 13:40 Сейчас в теме
Cobian Backup - дешево и сердито
МимохожийОднако; zhleonid8; +2
4. zhleonid8 23.09.12 19:28 Сейчас в теме
(3) zse, согласен, а ещё проще бат файл в назначенные задания
+
8. Elis_VP 8 24.09.12 15:06 Сейчас в теме
(4) zhleonid8, Так и сделано. Это - просто "ИДЕЯ". Для рабочей версии не хватает - "Выгонялкии 1С" для фоновых заданий. Пока на практике вынужден делать повтор для "сбойных" баз
+
5. w-divin 24.09.12 10:04 Сейчас в теме
(3) zse
судя по скрину тут делается выгрузка средствами 1С
(4) zhleonid8
вопрос про активные сессии, фоновые задания и т.п. остался нераскрытым...
+
10. musatov1c.ru 6 29.09.12 16:36 Сейчас в теме
Да выгонялка сюда бы очень не помешала. А идея хорошая. На мой взгляд архивирование лучше настраивать руками а не готовым инструментом. Хотя... В общем, Автору респект. Творческих и трудовых успехов :)
+
12. Elis_VP 8 02.10.12 10:25 Сейчас в теме
(10) evgen1977, Добавил в новый вариант АРХИВА уже с выгонялкой
+
11. KillHunter 7 29.09.12 18:04 Сейчас в теме
хороший вариант, автору респект!
+
14. musatov1c.ru 6 03.10.12 21:48 Сейчас в теме
Ура. Отлично!!! Все, никаких программ. Только самостоятельная настройка. Обязательно попробую на клиенте :)
+
Оставьте свое сообщение