Миграция базы данных
В данном разделе рассмотрен порядок переноса базы данных из Microsoft SQL Server в PostgreSQL.
Миграция базы данных может использоваться в следующих случаях:
- Перенос существующей базы данных из Microsoft SQL Server в PostgreSQL в пределах одного web-сервера.
- Перенос базы данных с web-сервера, использующего Microsoft SQL Server, на другой web-сервер, использующий PostgreSQL.
Порядок переноса:
- остановка сервиса
WebMapCore
, который использует экспортируемую базу данных; - экспорт существующей базы данных в Microsoft SQL Server во внешний файл;
- установка экземпляра базы данных PostgreSQL, если не установлен;
- импорт данных из ранее экспортированной базы в новую базу PostgreSQL.
Остановка сервиса WebMapCore
Экспорт существующие базы данных рекомендуется выполнять при остановленном сервисе WebMapCore
. Для остановки сервиса выполните следующую команду:
- MS Windows
- Linux
На ОС MS Windows команду необходимо выполнить из папки, в которую был распакован используемый экземпляр программы АвтоГРАФ.WEB.
net stop WebMapCore
systemctl stop webmapcore.service
Экспорт существующей базы данных
Выполните следующую команду:
- MS Windows
- Linux
На ОС MS Windows команду необходимо выполнить из папки, в которую была распакована программа АвтоГРАФ.WEB.
WebMapCore.exe export -d path
dotnet ./WebMapCore.dll export -d path
где:
path
- папка, в которую будет экспортирована база данных. Необходимо указывать полный путь к папке, относительно службы WebMapCore.
Продолжительность экспорта зависит от размеров исходной базы данных.
Установка экземпляра базы данных PostgreSQL
Если миграция выполняется с существующего web-сервера на новый, то вы можете выполнить установку базы данных PostgreSQL и сервиса WebMapCore
при помощи скрипта.
Подробнее см. в разделе "Установка" для вашей операционной системы.
При установке программы АвтоГРАФ.WEB на операционную систему Linux при помощи скрипта, разработанного компанией "ТехноКом",
скрипт автоматически устанавливает актуальную версию PostgreSQL и создает новую базу данных.
Если миграция выполняется в пределах одного web-сервера, то выполните установку экземпляра базы данных PostgreSQL на этом web-сервере вручную и создайте новую базу данных, следуя инструкции ниже.
Для создания новой базы данных выполните следующую команду:
- MS Windows
- Linux
На ОС MS Windows команду необходимо выполнить из папки, в которую была распакована программа АвтоГРАФ.WEB.
WebMapCore.exe createdb -s localhost -t 1 -d AGWEB -u postgres -p
dotnet ./WebMapCore.dll createdb -s localhost -t 1 -d AGWEB -u postgres
где:
AGWEB
- это название новой базы данных.
postgres
- это имя суперпользователя баз данных PostgreSQL.
Импорт данных в новую базу данных PostgreSQL
Далее необходимо выполнить импорт данных в новую базу PostgreSQL. Предварительно перенесите импортируемые файлы (экспортированные из старой базы MS SQL Server) на web-сервер.
Для начала импорта выполните следующую команду:
- MS Windows
- Linux
На ОС MS Windows команду необходимо выполнить из папки, в которую была распакована программа АвтоГРАФ.WEB.
WebMapCore.exe import -d path -u postgres -p pass
dotnet ./WebMapCore.dll import -d path -u postgres -p pass
где:
path
- папка, в которой расположены файлы, ранее экспортированные из старой базы данных.
postgres
- это имя суперпользователя базы данных PostgreSQL.
pass
- пароль суперпользователя postgres.
Дождитесь окончания импорта.
Если вы используете операционную систему Linux на вашем web-сервере и установка ПО АвтоГРАФ.WEB и необходимых программ, в том числе и PostgreSQL,
выполнялась скриптом, разработанным компанией "ТехноКом", то пароль суперпользователя postgres
будет сохранен в файл /root/postgres_password.txt
.
В новую базу будут перенесены все объекты, их настройки, организации, пользователи, а также системные настройки web-сервера,
в том числе и настройки подключения к серверу АвтоГРАФ 5, используемые для получения цифрового лицензионного ключа. Если необходимо, измените настройки подключения к серверу АвтоГРАФ на корректные, при помощи команды
setagserver
в меню "Системные настройки". Подробнее см. в разделе "Цифровой лицензионный ключ"
Запуск сервиса
После сохранения новых настроек запустите сервис WebMapCore
. Для этого выполните следующую команду:
- MS Windows
- Linux
На ОС MS Windows команду необходимо выполнить из папки, в которую была распакована программа АвтоГРАФ.WEB.
net start WebMapCore
systemctl start webmapcore.service
Была ли статья полезна?
Помогите нам улучшить статью, оставив обратную связь.