Перейти к основному содержимому
Версия: Indeed Access Manager 9.0

Миграция базы данных

Для миграции данных из Microsoft SQL в PostgreSQL используется утилита pgloader.

Предварительно перед миграцией выполните следующее:

  • установите .NET Core Runtime 6,
  • создайте новую базу данных в Postgres.
  1. Укажите данные для подключения к базам в конфигурационном файле ms.load в следующих строках:

    from mssql://{username}:{password}@{host}:{port}/{db_name}
    into pgsql://{username}:{password}@{host}:{port}/{db_name}
  2. Запустите утилиту с помощью следующей команды:

    docker-compose up
  3. Запустите скрипт восстановления таблицы миграций migrations.sql:

    • если база данных Postgres находится на другой машине, предварительно скопируйте на эту машину папку sql;
    • если имя пользователя отличается от имени по умолчанию, используйте файл migrations_no_owner.sql.
    psql -U postgres -d db_name < sql/migrations.sql
  4. При миграции данных из Microsoft SQL в PostgreSQL могут возникнуть ошибки из-за разного формата в типах данных. Запустите скрипт, который устранит такие ошибки:

    psql -U postgres -d db_name < sql/datafix.sql