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

Предварительные требования

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

  • Установите необходимый driver на сервере Data Movement Gateway

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

    Это требуется, только если выбрана работа с Data Movement Gateway. Для получения информации о преимуществах Data Movement Gateway и о том, когда его необходимо использовать, см. раздел Qlik Data Gateway — Data Movement.

    Обратите внимание, что Data Movement Gateway не поддерживается для подписки Qlik Talend Cloud Starter.

  • Предоставьте необходимые разрешения в источнике данных

  • Настройка коннектора источника данных

Поддерживаемые редакции

Поддерживаются следующие редакции MySQL:

  • MySQL Community Edition
  • MySQL Standard Edition
  • MySQL Enterprise Edition
  • MySQL Cluster Carrier Grade Edition

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

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

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

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

Подготовка к установке

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

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

    python3 --version

Установка driver

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

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

    opt/qlik/gateway/movement/drivers/bin

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

    Синтаксис:

    ./install mysql

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

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

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

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

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

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

Обновление driverа

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

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

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

    opt/qlik/gateway/movement/drivers/bin

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

    Синтаксис:

    ./update mysql

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

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

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

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

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

Удаление driverа

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

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

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

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

    opt/qlik/gateway/movement/drivers/bin

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

    Синтаксис:

    ./uninstall mysql

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

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

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

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

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

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

    sudo systemctl stop repagent

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

    sudo systemctl status repagent

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

    Active: inactive (dead) since <timestamp> ago

  3. Установите драйвер на машину Data Movement Gateway.
  4. Измените рабочий директорий на <Data Movement Gateway-Install-Dir>/bin.

  5. Скопируйте местоположение драйвера в файл site_arep_login.sh:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/lib64" >> site_arep_login.sh

    Таким образом драйвер будет добавлен к LD_LIBRARY_PATH, а в файле site_arep_login.sh будет сохранено местоположение драйвера.

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

    cat site_arep_login.sh
  7. Проверьте, что в файле /etc/odbcinst.ini имеется запись для MySQL, такая, как в этом примере:

    [MySQL ODBC 8.0 Unicode Driver]

    Driver = /usr/lib64/libmyodbc8w.so

    UsageCount = 1

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

    sudo systemctl start repagent

  9. Если нужно, подтвердите, что сервис запущен:

    sudo systemctl status repagent

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

    Active: active (running) since <timestamp> ago

Порт

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

Общие предварительные требования

Убедитесь, что выполнены следующие предварительные требования:

  • учетная запись MySQL с Необходимые разрешения;
  • MySQL 8: стандартная проверка подлинности для захвата изменений;
  • сертифицированные версии MySQL поддерживают дробное значение для временных типов данных ( представленных в версии MySQL 5.6). Следовательно, репликация перемещение старого формата временных типов данных больше не поддерживается.

    Примечание к информацииОбратите внимание, что при обновлении до версий MySQL, поддерживающих дробное значение для временных типов данных, формат временных типов данных не обновляется автоматически. Это необходимо выполнить отдельно. То же самое касается и обновления до версии MariaDB 10.1. Инструкции по обновлению формата временных типов данных см. в интерактивной справке поставщика.

Отслеживание изменений из базы данных MySQL, установленной у заказчика

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

Активируйте бинарный журнал

Чтобы включить ведение бинарного журнала (требуется для репликации перемещение с помощью CDC), в файлах MySQL my.ini (Windows) или my.cnf (UNIX) необходимо настроить следующие параметры.

Параметры для ведения бинарного журнала
Параметр Значение

server_id

Любое значение от 1.

Пример:

server_id=1

log-bin=<path>

Путь к файлу бинарного журнала (без расширения).

Пример:

log-bin=E:\MySql_Logs\BinLog

binlog_format

Значение должно быть:

binlog_format=row

expire_logs_days

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

Пример:

expire_logs_days=5

binlog_row_image

Значение должно быть:

binlog_row_image=full

Предварительные условия для кластера

Чтобы иметь возможность реплицировать (Переместить) кластеризованные (NDB) таблицы (подключаясь к любому из узлов кластера), необходимо настроить следующие параметры в файлах MySQL my.ini (Windows) или my.cnf (UNIX).

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

Если в качестве источника используется Percona, то процедуры, описанные в этом разделе, выполнять не нужно.

Параметры кластера
Параметр Значение

ndb_log_bin

Значение должно быть:

ndb_log_bin=on

Обеспечивает регистрацию изменений, внесенных в кластеризованные таблицы, в бинарном журнале.

ndb_log_update_as_write

Значение должно быть:

ndb_log_update_as_write=OFF

Предотвращает запись операций UPDATE как операций INSERT в бинарный журнал.

ndb_log_updated_only

Значение должно быть:

ndb_log_updated_only=OFF

Гарантирует, что бинарный журнал будет содержать всю строку, а не только столбцы с изменениями.

Отслеживание изменений из Google Cloud для MySQL

Бинарное журналирование

Для отслеживания изменений требуется ведение бинарного журнала. Чтобы проверить, включено ли ведение бинарного журнала (по умолчанию), убедитесь, что параметр базы данных binlog_row_image имеет значение full.

Репликация

Репликация позволяет копировать данные с главного сервера базы данных на один или несколько ведомых серверов.

Данные могут быть размещены на промежуточное хранение как из главного, так и из ведомого сервера.

Чтобы захватить изменения на ведомом сервере, параметр для ведения бинарного журнала log_slave_updates должен иметь значение «true» (1).

Продолжение: https://cloud.google.com/sql/docs/mysql/replication

Отслеживание изменений в from Amazon RDS для MySQL и Amazon Aurora для MySQL

Бинарное журналирование

Чтобы настроить для Amazon RDS for MySQL или Amazon Aurora for MySQL использование CDC, выполните следующие действия.

  1. Следуйте инструкциям по созданию новой группы параметров в справке AWS (см. раздел «Двоичный формат журнала»).

  2. В процессе создания новой группы параметров задайте: binlog_format=row

  3. Сохраните новую группу параметров.
  4. Если уже существует экземпляр Amazon RDS for MySQL, внесите в него изменения, чтобы использовать параметр, заданный при выполнении шага 2 выше. Если создается новый экземпляр Amazon RDS for MySQL, добавьте ссылку на новую группу параметров, созданную при выполнении шага 1 выше.
  5. В заключение убедитесь, что включено автоматическое резервное копирование (по умолчанию).

Дополнительная информация: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.MySQL.BinaryFormat.html

Репликация

Репликация позволяет копировать данные с главного сервера базы данных на один или несколько ведомых серверов.

Данные могут быть размещены на промежуточное хранение как из главного, так и из ведомого сервера.

Чтобы захватить изменения на ведомом сервере, параметр для ведения бинарного журнала log_slave_updates должен иметь значение «true» (1).

Продолжение: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_MySQL.Replication.html

Отслеживание изменений в базе данных Microsoft Azure для MySQL

Для отслеживания изменений требуется ведение бинарного журнала. Чтобы проверить, включено ли ведение бинарного журнала (по умолчанию), убедитесь, что параметр базы данных binlog_row_image имеет значение full.

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

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