Резервное копирование базы данных
Система Docsvision сохраняет информацию о карточках в SQL базе данных. Чтобы защитить данные от повреждения, удаления и в других случаях можно создать резервную копию БД. В данном разделе приведена инструкция по резервному копированию баз данных Microsoft SQL Server Management Studio и PostgreSQL, а также инструкция по переносу БД на другой сервер
При восстановлении БД из резервной копии под другим именем обратите внимание на рекомендации в пункте Рекомендации при переименовании базы данных.
Microsoft SQL Server Management Studio
Создание резервной копии БД Microsoft SQL Server Management Studio
При восстановлении основной БД также нужно восстанавливать сателлитные БД. |
-
Откройте Microsoft SQL Server Management Studio.
-
Подключитесь к серверу БД, указав учётные данные.
-
Найдите БД, для которой требуется создать резервную копию в списке баз данных.
-
Нажмите правой кнопкой на базу данных, выберите Задачи > Создать резервную копию.
-
Выберите желаемые настройки резервного копирования и нажмите ОК.
Восстановление БД из резервной копии Microsoft SQL Server Management Studio
При создании резервной копии основной БД также нужно создать резервные копии сателлитных БД. |
-
Откройте Microsoft SQL Server Management Studio.
-
В списке доступных баз данных выберите БД, которую нужно восстановить и вызовите контекстное меню правой кнопкой мыши.
-
Выберите Задачи > Отсоединить.
-
В появившемся окне поставьте флаг в колонке Удалить соединения и нажмите ОК.
-
Затем, в главном меню Microsoft SQL Server Management Studio поднимитесь вверх, наведите курсор на папку Базы данных и вызовите контекстное меню правой кнопкой мыши.
-
В контекстном меню выберите Восстановить базу данных.
-
Напротив слов База данных в раскрывающемся списке выберите БД, которую необходимо восстановить.
-
Затем выберите нужные настройки и нажмите ОК.
Подробнее о создании резервных копий в Microsoft SQL Server Management Studio можно почитать на сайте Docs.Microsoft.com.
Postgres SQL
Создание резервной копии БД Postgres SQL
При восстановлении основной БД также нужно восстанавливать сателлитные БД. |
Для создания резервной копии базы данных PostgreSQL можно воспользоваться утилитой pg_dump.
Базовый синтаксис для запуска резервного копирования при помощи pg_dump следующий:
pg_dump имя_базы > файл_дампа
Команду резервного копирования обычно требуется запускать с правами суперпользователя |
Чтобы указать адрес сервера БД для резервного копирования можно использовать параметры -h сервер
и -p порт
. По умолчанию pg_dump использует в качестве сервера localhost или значения переменных среды: PGHOST
для адреса сервера и PGPORT
для порта. Когда переменные не указаны, используются значения, указанные во время компиляции.
В качестве учётных данных для подключения к БД pg_dump использует имя пользователя текущего пользователя операционной системы. Передать учётные данные, отличающиеся от текущих можно при помощи параметра -U пользователь
. Для указания учётных данных можно также использовать переменную среды PGUSER
.
Восстановление из резервной копии БД Postgres SQL
При создании резервной копии основной БД также нужно создать резервные копии сателлитных БД. |
psql имя_базы < файл_дампа
В данном случае файл дампа — это созданная ранее при помощи pg_dump резервная копия.
Утилита psql принимает те же параметры для указания сервера, порта и учётных данных, что и pg_dump.
Подробнее о создании резервных копий в PostgreSQL можно почитать по ссылкам: PostgresPro, Хабр.
Перенос БД на другой сервер
Если требуется перенести созданную резервную копию базы данных на другой сервер, выполните следующие действия:
-
Создайте резервную копию базы данных на текущем сервере БД (исходный сервер) согласно инструкции для Microsoft SQL Server Management Studio или PostgreSQL.
-
Остановите службу Workflow на сервере для переноса БД (целевом сервере).
-
Восстановите БД из резервной копии на целевом SQL-сервере.
-
Очистите таблицу
B4A2559B-45FD-4ABA-919F-0F170CCDDB5D
от настроек исходного сервера. -
Очистите таблицу
dvsys_sessions
от старых сессий. -
Актуализируйте значения в таблице
dvsys_settings
. Убедитесь, что в таблице отсутствуют неправильные адреса. -
Запустите службу Workflow на целевом сервере.
-
Запустите Консоль настройки Docsvision на целевом сервере.
-
Проверьте текущие настройки и выполните недостающие настройки, если необходимо.
-
Запустите консоль настройки Web-клиент. Актуализируйте адрес подключения и базы данных.
-
На компьютере с серверными частями модулей откройте редактор реестра. В редакторе реестра перейдите на ветку
HKEY_LOCAL_MACHINE\SOFTWARE\DocsVision\Workflow
и убедитесь, что ссылки на другие серверы отсутствуют. Вам нужно проверить параметры: SiteUrl и SoapServiceUrl.
Особенности восстановления резервных копий с сателлитами
Сателлитные БД автоматически получают свои имена на основе имени главной БД. Все синонимы генерируются сразу с этими именами.
-
При переносе основной БД на другой SQL сервер обязательно потребуются также копии всех сателлитов.
-
При восстановлении копии БД на том же сервере SQL с переименованием также необходимо восстановить копии сателлитов с соответствующим переименованием.
-
Использование одного сателлита несколькими базами недопустимо. Данный режим не предусмотрен системой и может привести к некорректной работе.
-
При резервном копировании БД Docsvision также следует создавать резервные копии сателлитных баз данных (если используются): _Archive (обязательно), _Metadata (рекомендуется) и _Log (необязательно).
-
При переносе резервной копии БД на другой сервер обязательно потребуются также копии всех сателлитных БД.
-
При восстановлении копии БД на том же сервере SQL с переименованием также необходимо восстановить копии сателлитных БД с таким же переименованием.