RUS  ENG 

Варианты резервного копирования данных

Страницы: 1
RSS
Варианты резервного копирования данных
 
Подскажите, рассматриваю различные варианты резервного копирования данный сервера.
1. Резервное копирование файлов БД

2. Экспортирование БД средствами СУБД
3. Резервное копирование через Слой-Упаковать

Учитывая практику использования, какой из способов применяется чаще и правильнее?
Есть ли уже готовые скрипы для автоматизации резервного копирования?
 
Цитата
Виталий Токаренко написал:
Подскажите, рассматриваю различные варианты резервного копирования данный сервера.
1. Резервное копирование файлов БД

2. Экспортирование БД средствами СУБД
3. Резервное копирование через Слой-Упаковать

Учитывая практику использования, какой из способов применяется чаще и правильнее?
Есть ли уже готовые скрипы для автоматизации резервного копирования?
В разных организациях резервное копирование делают по-разному. Зависит от организации данных и потенциала админов.
В некоторых организациях в обязанности админа входит бэкап СУБД, независимо от содержания данных, и архивирование на файловом уровне папок с данными zulu. При этом копируют по дате, не затирая предыдущую копию.
В некоторых Слой-Упаковать. Полной информации у нас нет.
Пакетно Слой упаковать - https://www.politerm.com/articles/dev/object_model_in_bat/?sphrase_id=66934
 
Виталий Токаренко, я для резервного копирования использую программу Cobian Backup 11 (Gravity). Она по расписанию упаковывает в архив нужные папки и хранит заданное количество версий этого архива.
 
Подскажите, пожалуйста, при бэкап файлов слоя какие типы файлов можно исключить из бэкапа?
Например, файлы *.cache можно не включать в бэкап?
 
Цитата
написал:
Подскажите, пожалуйста, при бэкап файлов слоя какие типы файлов можно исключить из бэкапа?
Например, файлы *.cache можно не включать в бэкап?
Да, можно не включать. Это файлы производные от основных данных.
 
Предлагаю для такой задачи использовать стандартные средства Windows и свободно распространяемый пакет для работы с архивами 7-Zip.

Я бы сделал это следующим образом:
Создать .bat файл, с помощью которого будут запаковываться все данные карты, а так же база данных, привязанная к этой карте.

Для примера буду использовать хранилище на диске D и папку ZuluBackupDir, где будут храниться архивы с бэкапами на каждый день:
Код
REM Создаёт папку с текущей датой
MKDIR D:\ZuluBackupDir\%DATE% 

REM Запаковывает все файлы, которые принадлежат вашей карте, исключая .cache файлы
"C:\Program Files\7-Zip\7z.exe" a D:\ZuluBackupDir\%DATE%\GisMap.zip  "D:\Zulu 8.0\Data\Termo\<название карты>\" -y -xr!*.cache

REM Запускает задачу SQL и выполняет скрипт SqlCmdScript
sqlcmd -S <название_сервера> -d <название БД> -U <пользователь БД> -P <пароль пользователя БД> -i <путь к SQL скрипту>\SqlCmdScript.sql

REM Папку с файлами помещаем в единый архив с последующим удалением этой папки
"C:\Program Files\7-Zip\7z.exe" a D:\ZuluBackupDir\%DATE%.zip "D:\ZuluBackupDir\%DATE%" -y -sdel

REM Опционально: Удаление всех архивов старше 7 дней
forfiles.exe -p D:\ZuluBackupDir -s -d -7 -c "cmd /c del @path /q"

EXIT
Содержимое файла SqlCmdScript.sql:
Код
DECLARE @path VARCHAR(40)
SET @path = 'D:\ZuluBackupDir\' + CONVERT(varchar(15), GETDATE(), 104) + '\zulu_app.bak'
BACKUP DATABASE <название БД> TO DISK = @path WITH INIT
Необходимо предварительно хранилище бэкапов в SQL.

Создать в планировщике заданий новое задание, которое будет запускать .bat файл в удобное для вас время, например в 23:00.

Выглядит это вот так:
Скрытый текст
Страницы: 1