...
- Последняя версия платформы, собранная под задачу миграции: IQChannels-4.1.5-6.
- Версия Oracle Database: 12c Enterprise Edition Release 12.1.0.X.0 (где X - любая версия)
- Oracle Instant client basic windows 12.1.0.2 версии
- Postgresql 12 версии (на момент написания инструкции актуальная версия 12.20 для ОС Windows Server 2012 R2)
- Утилита для миграции Data pump Многопоточный конвертер баз данных - data-pump (на момент написания инструкции актуальная версия 0.11.0), которую необходимо запросить в коммерческой дирекции iSimpleLab.
- Для запуска утилиты Data data-pump также также понадобится Java(openjdk) версии не ниже 1.8 (jdk-8u202).
...
2) Также предварительно необходимо запросить в коммерческой дирекции iSimpleLab утилиту Data Pumpмногопоточный конвертер баз данных - data-pump последней версии (на 21.08.2024 актуальная версия 0.11.0).
...
Переходим в проводнике в папку C:/iqchannels/config, делаем копию файла. У нас получится два файла config.yaml (назвать их необходимо так, чтобы в скрипте миграции платформы был задействован определенный конфиг, далее в шагах будет подробно описано об этом). В одном необходимо указать подключение к БД Oracle, в другом подключение к БД PostgreSQL (ниже примеры параметров):
Для Oracle:Code Block language yml 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:
Code Block language yml 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.
- В данном шаге подготавливаются БД Oracle и PostgreSQL к переносу в утилите Data Pumpработе с многопоточным конвертером баз данных - data-pump. Необходимо сделать следующее:
В папке C:/iqchannels/config/ выбираем конфиг с указанной в параметрах БД Oracle (проверяем, что этот файл называется config.yaml). Второй конфиг с PostgreSQL переименовываем в _config.yaml (или любой другой, чтобы не был задействован в скрипте миграции ниже).
Открываем командную строку от имени Администратора.
Переходим в папку C:/iqchannels
Code Block language powershell theme Emacs cd C:/iqchannels
Далее запускаем скрипты миграции базы данных (Oracle) в командной строке (после данного шага командную строку закрывать не нужно, еще понадобится):
Code Block language powershell theme Emacs .\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
- Не запускаем платформу на данном этапе, теперь сразу же делаем следующие действия:
Также, как и в шаге a. данного пункта, переименовываем конфиги (но теперь наоборот):
В папке C:/iqchannels/config/ выбираем конфиг с указанной в параметрах БД PostgreSQL (проверяем, что этот файл называется config.yaml). Второй конфиг с Oracle переименовываем в _config.yaml (или любой другой, чтобы не был задействован в скрипте миграции ниже). Снова переходим в командную строку, в папке C:/iqchannels снова запускаем скрипты миграции базы данных (PostgreSQL):
Code Block language powershell theme Emacs .\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 многопоточный конвертер баз данных - data-pump (ранее её необходимо было запросить в шаге 2) инструкции). Для подготовки к её использованию необходимо:
- Для запуска утилиты Data data-pump понадобится Java(openjdk) версии не ниже 1.8 (jdk-8u202).
Скачиваем установщик, устанавливаем. В процессе установки особенностей нет, все стандартно. - После необходимо создать в корне диска C:/ папку (например C:/datapump), в которую необходимо поместить необходимые файлы, а именно (ниже пример для версии Data Pump data-pump 0.11.0):
- data-pump-0.11.0.jar
- start.bat
- Далее необходимо прописать настройки подключения к БД Oracle и PostgreSQL. Сделать это можно двумя способами:
- Отредактировать файл start.bat в текстовом редакторе
- Редактировать параметры после запуска веб-интерфейса
Рассмотрим второй способ, чтобы было более наглядно. Открываем командную строку от имени Администратора, и переходим в папку, в которую поместили файлы Data pump data-pump (ниже пример для пути C:/datapump):
Code Block language powershell theme Emacs cd C:/datapump
и далее запускаем start.bat
Code Block language powershell theme Emacs start.bat
- Открываем браузер, переходим в веб-интерфейс по адресу localhost:8080 (данный адрес и порт можно изменить в файле start.bat):
- Ниже на примере скришота выделены поля, в которых указывается подключение к БД, а также логин и пароль (указывать такие же, как и в файле C:/iqchannels/config/config.yaml).
Важное замечание, что в поле JDBC URL для БД Оракл и БД PostgreSQL записи отличаются, менять знаки, которые разделяют localhost, порт и имя базы не нужно.
...
- Далее необходимо настроить число одновременных потоков и таблиц, а также максимальное число и размер (более подробно о расчете в документации Data по работе с многопоточным конвертером баз данных - data-pump).
- После настройки, прокручиваем веб-страницу вниз, нажимаем кнопку Начать проверку. Пойдет процесс подготовки и проверки, после окончания будет выведена подробная информация об ошибках/несоответствиях. Если ошибки критичные, дальнейший этап будет недоступен. Пример на скриншоте ниже:
- Если все в порядке, нажимаем кнопку Начать копирование. По итогу будет выведена информация и статус (пример ниже):
...