Выгрузка информационной (подключение к Linux серверу)
Кодировка UTF8
C:\Program Files (x86)\pgAdmin 4\v4\runtime\pg_dump.exe --file "G:\\Backup\\demo_utf8.sql" --host "http" --port "5432" --username "postgres" --no-password --verbose --role "postgres" --format=c --blobs --encoding "UTF8" "demo"
1. Вариант на другом сервере, нет базы:
Нужно создать базу:
Восстановить базу:
C:\Program Files (x86)\pgAdmin 4\v4\runtime\pg_restore.exe --host "http" --port "5432" --username "postgres" --no-password --role "postgres" --dbname "demo" --verbose "G:\\Backup\\demo_utf8.sql"
Создать базу в 1С.
2. Вариант база существует
Если на сервере база уже есть, нужно остановить сервер 1С
$ sudo service srv1cv83 stop
Удалить базу
Выполнить Вариант 1 без создания базы в 1С
Запустить сервер 1С.
$ sudo service srv1cv83 start
.
Другой вариант, не удалять базу, а указать параметр Очистить перед восстановлением:
C:\Program Files (x86)\pgAdmin 4\v4\runtime\pg_restore.exe --host "http"
--port "5432" --username "postgres" --no-password --dbname "demo"
--clean --verbose "G:\\Backup\\demo_utf8.sql"
Скрипт требует установки pgAdmin
REM СОЗДАНИЕ РЕЗЕРВНОЙ КОПИИ БАЗЫ ДАННЫХ demo POSTGRESQL
REM в папке запуска скрипта в папке %PGDATABASE%REM для базы отличной от demo изменить PGDATABASE (следующая строка)
CLS
ECHO OFF
CHCP 1251
REM Установка переменных окружения
SET PGBIN=C:\Program Files (x86)\pgAdmin 4\v4\runtime\
SET PGHOST=http
SET PGPORT=5432
SET PGUSER=postgres
SET PGPASSWORD=pass
SET PGDATABASE=demo
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="%PGDATABASE%\%DUMPFILE%"
SET LOGPATH="%PGDATABASE%\%LOGFILE%"
REM Создание резервной копии
IF NOT EXIST %PGDATABASE% MD %PGDATABASE%
REM CALL "%PGBIN%\pg_dump.exe" --format=custom --verbose --file=%DUMPPATH% 2>%LOGPATH%
CALL "%PGBIN%\pg_dump.exe" --verbose --file=%DUMPPATH% --format=c --blobs
--encoding "UTF8" 2>%LOGPATH%
REM Анализ кода завершенияIF NOT %ERRORLEVEL%==0 GOTO ErrorGOTO Successfull
REM В случае ошибки удаляется поврежденная резервная копия и делается соответствующая запись в журнале
:Error
DEL %DUMPPATH%
MSG * "Ошибка при создании резервной копии базы данных. Смотрите backup.log."
ECHO %DATETIME% Ошибки при создании резервной копии базы данных %DUMPFILE%. Смотрите отчет %LOGFILE%. >> %PGDATABASE%.log
GOTO End
REM В случае удачного резервного копирования просто делается запись в журнал
:Successfull
ECHO %DATETIME% Успешное создание резервной копии %DUMPFILE% >> %PGDATABASE%.log
GOTO End
:End
Комментариев нет:
Отправить комментарий