Данный раздел описывает настройку, необходимую для запуска ProGate.
Для настройки работы с источником Oracle необходимо выполнить следующие действия:
Назначьте пользователю, под которым будет выполняться миграция, следующие привилегии:
GRANT CONNECT, RESOURCE TO PROGATE_USER; GRANT EXECUTE ON DBMS_LOGMNR TO PROGATE_USER; GRANT EXECUTE ON SYS.DBMS_CRYPTO TO PROGATE_USER; -- для procheck для сравнивания LOB объектов GRANT EXECUTE_CATALOG_ROLE TO PROGATE_USER; GRANT LOGMINING TO PROGATE_USER; GRANT SELECT ON V_$LOG TO PROGATE_USER; GRANT SELECT ON V_$LOGFILE TO PROGATE_USER; GRANT SELECT ON V_$LOGMNR_LOGS TO PROGATE_USER; GRANT SELECT ON V_$LOGMNR_CONTENTS TO PROGATE_USER; GRANT SELECT ON V_$LOGMNR_PARAMETERS TO PROGATE_USER; GRANT SELECT ON V_$ARCHIVED_LOG TO PROGATE_USER; GRANT SELECT ON V_$TRANSACTION TO PROGATE_USER; GRANT SELECT ON V_$DATABASE TO PROGATE_USER;
Для работы procheck с источником Oracle поддерживаются следующие драйверы:
oracle — не требует установки дополнительного программного обеспечения.
godror —требует установки Oracle Instant Client. После распаковки загруженного архива добавьте путь к каталогу в переменную окружения LD_LIBRARY_PATH:
LD_LIBRARY_PATH=<путь_к_клиенту_oracle>
Для приёмника в виде файлов формата Parquet специальная настройка не требуется.
Для настройки работы с приёмником Postgres Pro выполните следующие действия:
Установите и активируйте следующие расширения, доступные, начиная с Postgres Pro 16.4:
CREATE EXTENSION IF NOT EXISTS pgpro_bfile;
CREATE EXTENSION IF NOT EXISTS pgpro_sfile;
CREATE EXTENSION IF NOT EXISTS dbms_lob;
do
$$
BEGIN
PERFORM sf_initialize();
EXCEPTION WHEN OTHERS THEN
RAISE NOTICE 'already initialized';
end;
$$;Для переноса объектов BFILE создайте в приёмнике те же псевдонимы, что и в базе-источнике:
do
$$
BEGIN
PERFORM bfile_directory_create('ALIAS1', '/tmp/alias1');
EXCEPTION WHEN OTHERS THEN
RAISE NOTICE 'alias1 already exists';
end;
$$;
do
$$
BEGIN
PERFORM bfile_directory_create('ALIAS2', '/tmp/alias2');
EXCEPTION WHEN OTHERS THEN
RAISE NOTICE 'alias2 already exists';
end;
$$;Перенесите схему из базы-источника с помощью ora2pgpro.