Автоматизуємо бекап бази 1c 7.7 на sql 2005

Розповім як я реалізував щоденний бекап бази 1C 7.7 на SQL 2005, так само у мене робиться бекап файлів 1С. З 1C я почав працювати зовсім недавно, не буду в цій статті розповідати яке УГ цей ваш 1С, мені не доводилося вибирати. Після успішного підняття сервера SQL 2005 і установки 1С, все працювало як треба, але провідний програміст мало не кожен день нагадував про необхідність постійного бекапірованія. Страшно уявити що було б, якби не було бекапов.Но мене всякого роду біди обходять стороною, бекап я ще жодного разу не скористався, думаю і не доведеться ними користуватися. І так почнемо, завдання: "Кожен день зберігати базу даних 1С і файли з папки самої програми (конфігурація, папки користувачів, друковані форми і т.д. і т.п.)".

Для початку покажу як я все це робив вручну.

Ручний бекап бази 1C 7.7 на SQL 2005

Для вивантаження файлу бази даних, я підключаюся по RDP до свого облікового запису, відкриваю Microsoft SQL Server Management Studio, ввожу дані для підключення до сервера, тисну "Connect"бекап бази 1с 7.7 1Відкриваю гілку "Databases"Правою кнопкою по своїй базі ;"Tasks";"Backup"бекап бази 1с 7.7 2У вікні, вам потрібно вказати шлях куди зберегти бекап і тип бекапабекап бази 1с 7.7 3У вкладці "Options"Встановіть галочку"Verify backup when finished"бекап бази 1с 7.7 4Ось і все, тиснемо "OK"І чекаємо поки з`явитися повідомлення про успішне завершення бекапабекап бази 1с 7.7 5Далі я переходжу в папку з даними 1С і повністю її архівуютьсябекап бази 1с 7.7 6Після чого, архів і базу даних я переношу на інший сервер, де зберігаю 30 останніх копій (можна звичайно і менше зберігати, але розмір файлового сервера дозволяє).




Все б добре, але дану процедуру потрібно робити щодня. Витрачатися на все про все близько 5-7 хвилин часу, ніби й не багато, але буває забуваю, а буває і зовсім не зроблю за якийсь день (занадто зайнятий поточними завданнями). Коротше все це справа потрібно терміново автоматизувати.

Автоматизуємо бекап бази 1C 7.7 на SQL 2005

Як то я починав гуглітьна тему автоматизації бекапов бази даних 1С, але нічого толком не знайшов, а буквально днями знову задався цим питанням, і зібрав по крупицях ось такий варіант.

  1. Написати скрипт автоматичного збереження бази даних у вказане місце
  2. Додати скрипт в шедулера (планувальник завдань), налаштувати час і дні запуску
  3. Перевірити як все відпрацювало



Для написання скрипта відкриваємо блокнот і вносимо туди наступну інформацію

1
2
3
4
5
6
7
8
9
10
11

Відео: Як зробити резервну копію бази 1С 7.7

12
13
set DIR_BACKUP=D:backupBackup_Analit_%date%
set DIR_ARCHIVE=srv-fsbackupBackup_Analit_%date%
set DIR_FILES=D:sharesKrjymSQL-TEST
set NAME_PC=srv-sql
md%DIR_BACKUP%
md%DIR_ARCHIVE%
osql-S%NAME_PC%-E-Q"BACKUP DATABASE krjymtest TO DISK = `% DIR_BACKUP% krjymtest.bak` with init"

Відео: Розвертаємо додаткову копію бази 1С на MS SQL паралельно робочій базі

"C: Program Files 7-zip 7z.exe"a%DIR_BACKUP%DB_krjymtest_%date%.zip%DIR_BACKUP%krjymtest.bak
"C: Program Files 7-zip 7z.exe"a%DIR_BACKUP%FILES_krjymtest_%date%.zip%DIR_FILES%*
copy%DIR_BACKUP%DB_krjymtest_%date%.zip%DIR_ARCHIVE%
copy%DIR_BACKUP%FILES_krjymtest_%date%.zip%DIR_ARCHIVE%

Тепер докладніше:

  • set DIR_BACKUP - оголошення змінної містить шлях до локальної папці куди будуть зберігатися бекапи
  • set DIR_ARCHIVE - оголошення змінної містить шлях до мережевої папці де будуть зберігатися бекапи
  • set DIR_FILES - оголошення змінної містить шлях до папки з файлами програми
  • set NAME_PC - оголошення змінної містить ім`я сервера
  • md% DIR_BACKUP% - створюємо папку на сервері, куди збережемо базу даних
  • md% DIR_ARCHIVE% - створимо папку на мережевому ресурсі, де всі архіви будуть зберігатися
  • "BACKUP DATABASE krjymtest TO DISK = `% DIR_BACKUP% krjymtest.bak` with init" - процедура виконання бекапа бази даних з ім`ям "krjymtest"В папку на сервері і перейменування цього бекапу в krjymtest.bak
  • "C: Program Files 7-zip 7z.exe" a - архівування бази даних і папки з файлами
  • copy% DIR_BACKUP% - копіювання створених архівів на мережевий ресурс

Ось в принципі і все! Зберігаємо файл під ім`ям, наприклад, Backup-1C.bat

Відео: Установка 1С v7.7 на сервер MS SQL 2005 (підміна BkEnd.dll)

Тепер потрібно запустити планувальник завдань на сервері, і додати в нього завдання на запуск бекапа. Як це зробити дивись нижче в скріншотах

Поділися в соціальних мережах:

Схожі
Імпорт бази даних в phpmyadminІмпорт бази даних в phpmyadmin
Структура бази данихСтруктура бази даних
Online nandroid backupOnline nandroid backup
Управління базами даних в phpmyadminУправління базами даних в phpmyadmin
При запуску програми з`являється помилка: "додаток не було запущено, оскільки воно некоректно…При запуску програми з`являється помилка: "додаток не було запущено, оскільки воно некоректно…
Як зберігати дані в форміЯк зберігати дані в формі
Помилка max user connections в mysqlПомилка max user connections в mysql
Як імпортувати бази даних великих розмірів?Як імпортувати бази даних великих розмірів?
Помилка 2006 чи server has gone awayПомилка 2006 чи server has gone away
Чи варто зберігати зображення в бдЧи варто зберігати зображення в бд
» » Автоматизуємо бекап бази 1c 7.7 на sql 2005