1) Для начала необходимо провести апдейт Oracle Database до версии 12 Release 1 в том случае, если текущая версия БД Oracle ниже 12.
2) Также предварительно необходимо запросить в коммерческой дирекции iSimpleLab многопоточный конвертер баз данных - data-pump последней версии (на 21.08.2024 актуальная версия 0.11.0).
3) Настроим Oracle Instant Client (Если ранее не было настроено на текущей ОС, иначе пропускаем данный пункт).
Необходимо скачать версию basic 12.1.0.2. Далее распаковать папку instantclient_12_1 из архива, и положить на диск С. Сразу же необходимо копировать в буфер обмена абсолютный путь до папки (например C:/instantclient_12_1), и внести записи в переменные среды:
4) Далее загружаем IQChannels-4.1.5-6 с доработками для проведения миграции.
iqchannels
.c:/
уже имеется ранее установленная платформа (папка iqchannels), то из неё необходимо взять свой конфиг по пути c:/iqchannels/config/config.yaml, копировать в другое место, а папку по пути C:/iqchannels можно удалить
config.yaml
в папку по пути c:/iqchannels/config/
5) Следующий этап - установка и подготовка PostgreSQL. Необходимо скачать установщик с официального сайта (https://www.postgresql.org/), версии 12 (актуальная 12.20 на 21.08.2024) для ОС Windows Server 2012 R2. После скачивания, установить, следуя подсказкам в установщике (особенности установки см. в ПРИМЕЧАНИИ).
ПРИМЕЧАНИЕ: Важно, когда увидите список компонентов для установки, отмеченный галочками, рекомендуем не ставить pgAdmin из данного установщика, поэтому галочку с него необходимо снять, т.к. в данном установщике pgAdmin часто не запускается в системе корректно. Для решения данного вопроса, после установки рекомендуем скачать pgAdmin отдельно и установить, если необходим графический интерфейс при подключении и настройке БД Postgre (например, pgAdmin 4.26).
После установки делаем подготовку БД Postgre:
Чистая БД Postgre готова.
6) Далее нам необходимо проделать следующие действия с ранее подготовленной платформой iqchannels на C:/iqchannels:
Переходим в проводнике в папку C:/iqchannels/config, делаем копию файла. У нас получится два файла config.yaml (назвать их необходимо так, чтобы в скрипте миграции платформы был задействован определенный конфиг, далее в шагах будет подробно описано об этом). В одном необходимо указать подключение к БД Oracle, в другом подключение к БД PostgreSQL (ниже примеры параметров):
Для Oracle:
db: type: oracle connect: iqchannels/secret@localhost:1521/xe max_idle: 4 # Max idle connections in a connection pool. max_open: 12 # Max open connections in a connection pool. |
Для PostgreSQL:
db: type: postgres connect: host=localhost port=5432 dbname=iqchannels user=iqchannels password=secret sslmode=disable max_idle: 4 # Max idle connections in a connection pool. max_open: 12 # Max open connections in a connection pool. |
В папке C:/iqchannels/config/ выбираем конфиг с указанной в параметрах БД Oracle (проверяем, что этот файл называется config.yaml). Второй конфиг с PostgreSQL переименовываем в _config.yaml (или любой другой, чтобы не был задействован в скрипте миграции ниже).
Открываем командную строку от имени Администратора.
Переходим в папку C:/iqchannels
cd C:/iqchannels |
Далее запускаем скрипты миграции базы данных (Oracle) в командной строке (после данного шага командную строку закрывать не нужно, еще понадобится):
.\bin\iqchanneld.bat migrate 2017/11/15 15:46:45 WARN migrations Migrating... 2017/11/15 15:46:45 WARN migrations Reading migrations from "migrations/oracle" ... 2017/11/15 15:46:45 WARN migrations Applied 0 migration(s) in 64ms |
Снова переходим в командную строку, в папке C:/iqchannels снова запускаем скрипты миграции базы данных (PostgreSQL):
.\bin\iqchanneld.bat migrate 2017/11/15 15:46:45 WARN migrations Migrating... 2017/11/15 15:46:45 WARN migrations Reading migrations from "migrations/postgres" ... 2017/11/15 15:46:45 WARN migrations Applied 0 migration(s) in 64ms |
Платформу также после данного шага запускать/проверять не нужно.
7) Следующим шагом самый главный этап - миграция данных через многопоточный конвертер баз данных - data-pump (ранее её необходимо было запросить в шаге 2) инструкции). Для подготовки к её использованию необходимо:
Рассмотрим второй способ, чтобы было более наглядно. Открываем командную строку от имени Администратора, и переходим в папку, в которую поместили файлы data-pump (ниже пример для пути C:/datapump):
cd C:/datapump |
и далее запускаем start.bat
start.bat |
8) Все готово, теперь необходимо проверить данные, для этого запустим платформу IQChannels:
Открываем командную строку от имени Администратора, и переходим в папку C:/iqchannels
cd C:/iqchannels |
Далее запускаем демон приложения:
.\bin\iqchanneld.bat run |
9) Если в предыдущем пункте результаты проверки успешные, то миграция завершена, далее можно обновлять платформу на более свежие версии с PostgreSQL.