Перейти к основному содержимому Перейти к дополнительному содержимому

Oracle

В этом разделе объясняется настройка подключения к цели Oracle с использованием коннектора Цель Oracle. Oracle можно использовать в качестве цели только в задаче репликации. Прежде чем подключаться к цели Oracle, необходимо настроить Необходимые разрешения в базе данных. Если подключение к Oracle осуществляется через Data Movement Gateway, также требуется установить необходимый драйвер, как описано в Настройка драйвера.

Для получения дополнительной информации об ограничениях и замечаниях при использовании коннектора Oracle см. раздел Ограничения и замечания.

Настройка свойств подключения

В этом разделе описаны доступные свойства подключения. Если не указано иное, все свойства являются обязательными.

Цель данных

  • Шлюз данных: Выберите шлюз Data Movement Gateway, с использованием которого будет тестироваться подключение к цели Oracle. Это должен быть тот же шлюз, который использовался для доступа к источнику данных.

    Примечание к информации
    • Требуется Data Movement Gateway 2023.5.10 или более поздней версии.
    • Также необходимо установить соответствующий драйвер на компьютер с Data Movement Gateway. Для получения подробных сведений см. раздел Настройка драйвера ниже.

  • Connection string (Строка подключения): Строка подключения Oracle для базы данных Oracle, с которой требуется работать.

    Примечание к информации

Свойства учетной записи (Account properties)

Имя пользователя и пароль: имя и пароль пользователя для доступа к базе данных Oracle Server.

Внутренние свойства

Внутренние свойства предназначены для особых вариантов использования и поэтому не отображаются в диалоговом окне. Их можно использовать только по указанию службы поддержки Qlik.

Используйте кнопки Создать и Отмена справа от полей, чтобы при необходимости добавить или удалить свойства.

Имя

Отображаемое имя подключения.

Условия

Необходимые разрешения

Пользователю, указанному в строке подключения, должны быть предоставлены следующие права в базе данных Oracle:

  • CREATE ANY TABLE

  • CREATE ANY INDEXES

  • ALTER ANY TABLE

  • DROP ANY TABLE
  • INSERT ANY TABLE

  • UPDATE ANY TABLE

  • DELETE ANY TABLE

  • SELECT ANY TABLE

  • SELECT all_indexes

  • SELECT all_ind_columns

  • SELECT all_constraints

  • SELECT all_cons_columns

  • LOCK ANY TABLE

Настройка драйвера

driver можно установить с помощью программы для установки драйверов (рекомендуется) или вручную. Ручную установку следует выполнять только в том маловероятном случае, если возникла проблема с программой для установки драйверов.

Использование программы для установки драйверов для установки драйвера

В этом разделе описывается процедура установки необходимого driverа. Она включает выполнение скрипта, который автоматически загружает, устанавливает и настраивает необходимый driver. Также можно выполнять скрипты для обновления и удаления driverа по необходимости.

  • Убедитесь, что на сервере шлюза Перемещение данных установлена версия Python 3.6 или более поздняя.

    Python предустанавливается в большинстве дистрибутивов Linux. Чтобы проверить, какая версия Python установлена в системе, выполните следующую команду:

    python3 --version

Чтобы загрузить и установить driver, выполните следующие действия.

  1. На компьютере шлюза Перемещение данных измените рабочую папку на:

    opt/qlik/gateway/movement/drivers/bin

  2. Выполните следующую команду:

    Синтаксис:

    ./install oracle

    Если не удается загрузить driver (из-за ограничений доступа или технических проблем), появится сообщение с указанием места, откуда можно загрузить driver и куда его скопировать на компьютере шлюза Перемещение данных. После этого выполните команду install oracle еще раз.

    В противном случае откроется лицензионное соглашение с конечным пользователем driverа.

  3. Выполните одно из следующих действий:

    • Нажмите клавишу [Enter] несколько раз, чтобы медленно прокрутить лицензионное соглашение.
    • Нажимайте клавишу «Пробел» несколько раз, чтобы быстро прокрутить лицензионное соглашение.
    • Нажмите клавишу «q», чтобы закрыть текст лицензионного соглашения и перейти к шагу принятия/отклонения.
  4. Затем выполните одно из следующих действий:

    • Введите «y» и нажмите клавишу [Enter], чтобы принять лицензионное соглашение и запустить установку.
    • Введите «n» и нажмите клавишу [Enter], чтобы отклонить лицензионное соглашение и отменить установку.
    • Введите «v» и нажмите клавишу [Enter], чтобы снова открыть лицензионное соглашение для просмотра.

  5. Будет установлен driver.

Выполните команду обновления, если требуется удалить предыдущие версии driverа перед установкой предоставленной версии driverа.

Чтобы загрузить и обновить driver, выполните следующие действия.

  1. На компьютере шлюза Перемещение данных измените рабочую папку на:

    opt/qlik/gateway/movement/drivers/bin

  2. Выполните следующую команду:

    Синтаксис:

    ./update oracle

    Если не удается загрузить driver (из-за ограничений доступа или технических проблем), появится сообщение с указанием места, откуда можно загрузить driver и куда его скопировать на компьютере шлюза Перемещение данных. После этого выполните команду update oracle еще раз.

    В противном случае откроется лицензионное соглашение с конечным пользователем driverа.

  3. Выполните одно из следующих действий:

    • Нажмите клавишу [Enter] несколько раз, чтобы медленно прокрутить лицензионное соглашение.
    • Нажимайте клавишу «Пробел» несколько раз, чтобы быстро прокрутить лицензионное соглашение.
    • Нажмите клавишу «q», чтобы закрыть текст лицензионного соглашения и перейти к шагу принятия/отклонения.
  4. Затем выполните одно из следующих действий:

    • Введите «y» и нажмите клавишу [Enter], чтобы принять лицензионное соглашение и запустить установку.
    • Введите «n» и нажмите клавишу [Enter], чтобы отклонить лицензионное соглашение и отменить установку.
    • Введите «v» и нажмите клавишу [Enter], чтобы снова просмотреть лицензионное соглашение от начала.
  5. Будет удален старый driver и установлен новый driver.

Выполните команду удаления, если требуется удалить driver.

Чтобы удалить driver, выполните следующие действия.

  1. Остановите все задачи, использующие данный коннектор.

  2. На компьютере шлюза Перемещение данных измените рабочую папку на:

    opt/qlik/gateway/movement/drivers/bin

  3. Выполните следующую команду:

    Синтаксис:

    ./uninstall oracle

    driver будет удален.

Установка драйвера вручную

Установку driver вручную следует пытаться выполнить только в том случае, если автоматическая установка драйвера не завершилась успешно.

После установки Data Movement Gateway загрузите драйвер oracle-instantclient-basiclite-<version>.x86_64.rpm. Прямую ссылку для загрузки поддерживаемой версии можно найти в разделе binary-artifacts в /opt/qlik/gateway/movement/drivers/manifests/oracle.yaml. После завершения загрузки скопируйте RPM на компьютер Data Movement Gateway.

Затем на сервере Data Movement Gateway откройте приглашение оболочки и выполните действия, указанные ниже.

  1. Остановите службу Data Movement Gateway:

    sudo systemctl stop repagent

  2. Если нужно, подтвердите, что служба остановлена:

    sudo systemctl status repagent

  3. Статус должен быть следующим:

    Active: inactive (dead) since <timestamp> ago

  4. Установите драйвер (RPM).
  5. Дополнительно создайте символьную ссылку в каталоге $Oracle_Home\lib, если такая ссылка отсутствует в системе. Назовите ссылку libclntsh.so и свяжите ее с конкретной версией этого файла.

    lrwxrwxrwx 1 oracle oracle 63 Oct 2 14:16 libclntsh.so -> /u01/app/oracle/home/lib/libclntsh.so.21.1

  6. Измените рабочий каталог на <Data Movement Gateway-Install-Dir>/bin и добавьте переменную среды LD_LIBRARY_PATH в каталог Oracle Instant Client, а также в каталог Data Movement Gatewaylib, скопировав местоположение драйвера в файл site_arep_login.sh:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/oracle/instantclient_<version>:/opt/qlik/gateway/movement/lib/" >> site_arep_login.sh

  7. При необходимости подтвердите, что местоположение драйвера было скопировано:

    cat site_arep_login.sh
  8. Запустите службу Data Movement Gateway.

    sudo systemctl start repagent

  9. При необходимости подтвердите, что служба запущена.

    sudo systemctl status repagent

    Статус должен быть следующим:

    Active: active (running) since <timestamp> ago

Подключение к автономному хранилищу данных Oracle

При репликации в Oracle Autonomous Data Warehouse необходимо следовать описанной ниже процедуре.

Чтобы настроить подключение к Oracle Autonomous Data Warehouse (ADW), требуется файл ZIP с удостоверением клиента (бумажником), загруженный при настройке среды Oracle Autonomous Data Warehouse.

Чтобы обеспечить возможность подключения Data Movement Gateway к службе Oracle Autonomous Data Warehouse, выполните следующие действия.

  1. Извлеките содержимое ZIP-файла с удостоверением клиента в папку по своему выбору.

    Это может быть любая папка, но в данном примере извлеченные файлы будут находиться в папке Linux /home/adw_credentials.

  2. В папке с извлеченными файлами измените файл sqlnet.ora, заменив ?/network/admin на путь к папке, содержащей извлеченные файлы:

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adw_credentials")))

    SSL_SERVER_DN_MATCH=yes

  3. Создайте переменную среды TNS_ADMIN и задайте в качестве значения местоположение файла удостоверения.

    Выполните следующую команду:

    export TNS_ADMIN=/home/adw_credentials

    export PATH=$TNS_ADMIN:$PATH

  4. В коннекторе Цель Oracle введите в поле Строка подключения одно из имен из файла tnsnames.ora.

Для получения дополнительной информации о настройке подключения к Oracle ADW см.:

Подключение к автономной обработке транзакций с использованием клиентского приложения

Ограничения и замечания

При использовании Oracle в качестве цели репликации действуют следующие ограничения:

  • В базе данных Oracle нельзя создавать новые схемы. Чтобы реплицировать данные в новую схему, эта схема должна уже существовать в целевой базе данных. После этого следует указать имя новой схемы на вкладке Metadata в параметрах задачи.
  • При применении изменений в режиме Пакетная оптимизация пустые столбцы LOB могут реплицироваться как значения NULL.

  • Если включен параметр Ограничить размер LOB до и таблица содержит данные NCLOB, то после завершения полной загрузки размер NCLOB в цели будет усечен до половины размера, заданного в поле Ограничить размер LOB до. CDC будет усекать размер в соответствии с заданным ограничением.

Типы данных

Информация о собственном типе данных сохраняется и отображается в столбце Собственный тип данных в видах набора данных. Если этот столбец не отображается, необходимо открыть инструмент «Управление столбцами» в виде набора данных и выбрать столбец Собственный тип данных.

Типы данных
Типы данных Qlik Cloud Типы данных Oracle

BOOLEAN

NUMBER (1)

BYTES

RAW (length)

DATE

DATETIME

TIME

TIMESTAMP (0)

DATETIME

Если масштаб <= 9, то TIMESTAMP (scale)

В противном случае, VARCHAR2 (37)

INT1

NUMBER (3)

INT2

NUMBER (5)

INT4

NUMBER (10)

INT8

NUMBER (19)

NUMERIC

NUMBER (p,s)

REAL4

BINARY_FLOAT

REAL8

BINARY_DOUBLE

STRING

С указанием date: DATE

С указанием time: TIMESTAMP

С указанием timestamp: TIMESTAMP

С указанием timestamp_with_timezone: TIMESTAMP WITH TIMEZONE

С указанием timestamp_with_local_timezone: TIMESTAMP WITH LOCAL TIMEZONE

С указанием interval_year_to_month: INTERVAL YEAR TO MONTH

С указанием interval_day_to_second: INTERVAL DAY TO SECOND

Если длина > 4000: CLOB

Во всех остальных случаях: VARCHAR2 (длина)

UINT1

NUMBER (3)

UINT2

NUMBER (5)

UINT4

NUMBER (10)

UINT8

NUMBER (19)

WSTRING

NVARCHAR2 (длина)

Обратите внимание, что когда длина больше 2000, тип данных столбца будет NCLOB.

BLOB

BLOB

Примечание к информации
  • Чтобы использовать этот тип данных в задаче репликации, необходимо включить использование BLOB для конкретной задачи.
  • Во время операции CDC или во время полной загрузки, когда включен параметр Разрешить неограниченный размер LOB, типы данных LOB поддерживаются только в таблицах с первичным ключом или уникальным индексом.

CLOB

CLOB

Примечание к информации
  • Чтобы использовать этот тип данных в задаче репликации, необходимо включить использование CLOB для конкретной задачи.
  • Во время операции CDC или во время полной загрузки, когда включен параметр Разрешить неограниченный размер LOB, типы данных LOB поддерживаются только в таблицах с первичным ключом или уникальным индексом.

NCLOB

NCLOB

Примечание к информации
  • Чтобы использовать этот тип данных в задаче репликации, необходимо включить использование NCLOB для конкретной задачи.
  • Во время операции CDC или во время полной загрузки, когда включен параметр Разрешить неограниченный размер LOB, типы данных LOB поддерживаются только в таблицах с первичным ключом или уникальным индексом.

Целевой тип данных XMLTYPE применим только в задачах репликации из Oracle в Oracle. См. примечание ниже.

XMLTYPE

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!