Создание резервной копии с использованием командного файла — различия между версиями

Материал из ЭЛЕСТА
Перейти к: навигация, поиск
Строка 7: Строка 7:
 
1.1. Создайте и откройте текстовый документ. В меню файл выберите '''Сохранить как'''
 
1.1. Создайте и откройте текстовый документ. В меню файл выберите '''Сохранить как'''
  
[[Изображение:1505.PNG|800px|border|]]
+
[[Изображение:1301.PNG|800px|border|]]
  
 
1.2 В диалоговом окне Сохранить как укажите '''имя файла''' и расширение '''bat''' (Например '''start_backup.bat'''). Нажмите '''Сохранить'''
 
1.2 В диалоговом окне Сохранить как укажите '''имя файла''' и расширение '''bat''' (Например '''start_backup.bat'''). Нажмите '''Сохранить'''
  
[[Изображение:1505.PNG|800px|border|]]
+
[[Изображение:1302.PNG|800px|border|]]
  
 
1.3 В результате получится командный файл с расширением '''bat'''
 
1.3 В результате получится командный файл с расширением '''bat'''
  
[[Изображение:1505.PNG|800px|border|]]
+
[[Изображение:1303.PNG|800px|border|]]
  
 
2 Откройте файл для редактирования
 
2 Откройте файл для редактирования
  
[[Изображение:1505.PNG|800px|border|]]
+
[[Изображение:1304.PNG|800px|border|]]
  
 
3 Добавьте в командный файл следующий текст:
 
3 Добавьте в командный файл следующий текст:
  
<code>@echo Создание резервной копии<br>
+
REM Пример создание резервной копии базы данных POSTGRESQL
"C:\PostgreSQL\9.6\bin\pg_dump.exe" -h localhost -p 5432 -U postgres -F c -b –v -f "1.backup" jupiter</code>
+
CLS
 
+
ECHO OFF
[[Изображение:1505.PNG|800px|border|]]
+
CHCP 1251
 
+
REM Установка переменных окружения
<code>@echo Создание резервной копии</code> - Вывод на экран консоли соответствующего текста<br>
+
SET PGBIN=C:\PostgreSQL\9.6\bin
<code>"C:\PostgreSQL\9.6\bin\pg_dump.exe"</code> - путь к файлу, выполняющего резервирование (по умолчанию)<br>
+
SET PGDATABASE=jupiter
<code>-h localhost</code> - IP-адрес подключения, где localhost – собственный IP – адрес <br>
+
SET PGHOST=localhost
<code>-p 5432</code> - порт подключения к СУБД, по умолчанию 5432 <br>
+
SET PGPORT=5432
<code>-U postgres</code> - пароль для подключения <br>
+
SET PGUSER=postgres
<code>-F c -b –v</code> - формат записи резервной копии<br>
+
SET PGPASSWORD=postgres
<code>-f "1.backup"</code> - имя выходного файла<br>
+
REM Смена диска и переход в папку из которой запущен bat-файл
<code>jupiter</code> - название резервируемой схемы данных
+
%~d0
 +
CD %~dp0
 +
REM Формирование имени файла резервной копии и файла-отчета
 +
SET DATETIME=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2% %TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%
 +
SET DUMPFILE=%PGDATABASE% %DATETIME%.backup
 +
SET LOGFILE=%PGDATABASE% %DATETIME%.log
 +
SET DUMPPATH="Backup\%DUMPFILE%"
 +
SET LOGPATH="Backup\%LOGFILE%"
 +
REM Создание резервной копии
 +
IF NOT EXIST Backup MD Backup
 +
CALL "%PGBIN%\pg_dump.exe" --format=custom --verbose --file=%DUMPPATH% 2>%LOGPATH%
 +
REM Анализ кода завершения
 +
IF NOT %ERRORLEVEL%==0 GOTO Error
 +
GOTO Successfull
 +
REM В случае ошибки удаляется поврежденная резервная копия и делается соответствующая запись в журнале
 +
:Error
 +
DEL %DUMPPATH%
 +
MSG * "Ошибка при создании резервной копии базы данных. Смотрите backup.log."
 +
ECHO %DATETIME% Ошибки при создании резервной копии базы данных %DUMPFILE%. Смотрите отчет %LOGFILE%. >> backup.log
 +
GOTO End
 +
REM В случае удачного резервного копирования просто делается запись в журнал
 +
:Successfull
 +
ECHO %DATETIME% Успешное создание резервной копии %DUMPFILE% >> backup.log
 +
GOTO End
 +
:End
  
 
2.4 Сохраните файл. Таким образом командный файл создан и после его исполнения, будет
 
2.4 Сохраните файл. Таким образом командный файл создан и после его исполнения, будет

Версия 10:11, 8 июня 2017

СТРАНИЦА СОЗДАЕТСЯ, ИНФОРМАЦИЯ НЕ АКТУАЛЬНАЯ

1. Создайте командный файл

1.1. Создайте и откройте текстовый документ. В меню файл выберите Сохранить как

1301.PNG

1.2 В диалоговом окне Сохранить как укажите имя файла и расширение bat (Например start_backup.bat). Нажмите Сохранить

1302.PNG

1.3 В результате получится командный файл с расширением bat

1303.PNG

2 Откройте файл для редактирования

1304.PNG

3 Добавьте в командный файл следующий текст:

REM Пример создание резервной копии базы данных POSTGRESQL
CLS
ECHO OFF
CHCP 1251
REM Установка переменных окружения
SET PGBIN=C:\PostgreSQL\9.6\bin
SET PGDATABASE=jupiter
SET PGHOST=localhost
SET PGPORT=5432
SET PGUSER=postgres
SET PGPASSWORD=postgres
REM Смена диска и переход в папку из которой запущен bat-файл
%~d0
CD %~dp0
REM Формирование имени файла резервной копии и файла-отчета
SET DATETIME=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2% %TIME:~0,2%-%TIME:~3,2%-%TIME:~6,2%
SET DUMPFILE=%PGDATABASE% %DATETIME%.backup
SET LOGFILE=%PGDATABASE% %DATETIME%.log
SET DUMPPATH="Backup\%DUMPFILE%"
SET LOGPATH="Backup\%LOGFILE%"
REM Создание резервной копии
IF NOT EXIST Backup MD Backup
CALL "%PGBIN%\pg_dump.exe" --format=custom --verbose --file=%DUMPPATH% 2>%LOGPATH%
REM Анализ кода завершения
IF NOT %ERRORLEVEL%==0 GOTO Error
GOTO Successfull
REM В случае ошибки удаляется поврежденная резервная копия и делается соответствующая запись в журнале
:Error
DEL %DUMPPATH%
MSG * "Ошибка при создании резервной копии базы данных. Смотрите backup.log."
ECHO %DATETIME% Ошибки при создании резервной копии базы данных %DUMPFILE%. Смотрите отчет %LOGFILE%. >> backup.log
GOTO End
REM В случае удачного резервного копирования просто делается запись в журнал
:Successfull
ECHO %DATETIME% Успешное создание резервной копии %DUMPFILE% >> backup.log
GOTO End
:End

2.4 Сохраните файл. Таким образом командный файл создан и после его исполнения, будет выполнятся резервная копия схемы данных, в указанный выходной файл.

2.5 Для сохранения каждой копии резерва в отдельный файл, возможно следующая реализация.

2.5.1 Создайте командный файл

2.5.2 Откройте файл для редактирования

2.5.3 Добавьте в командный файл следующий текст.

1505.PNG

RAR.exe –запуск программы архивации RAR. a – команда для программы RAR, о добавлении в архив файлов. -ag – ключ для программы RAR, о добавлении в имя создаваемого архива, дату и время. С:\BUCKUP\mgs.rar - имя создаваемого архива. MGS.backup – имя файла, подлежащего архивации. Здесь также можно указать полный путь к папке. При необходимости вы можете изменять параметры выполнения программы RAR.exe (Список ключей находится в приложении №2).

2.5.4 Выложите в каталог с командным файлом программу RAR.exe.

2.5.5 В результате получится архивный файл. В котором хранится вся база данных

1505.PNG