Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Voraussetzungen

Vergewissern Sie sich, dass Sie die folgenden Voraussetzungen erfüllen, bevor Sie Daten bereitstellen oder replizieren:

  • Installieren des benötigten driver auf dem Gateway-Server für Datenbewegungen

  • Gewähren der benötigten Berechtigungen für die Datenquelle

  • Konfigurieren des Datenquellenkonnektors

Treibereinrichtung

Sie können den driver mit dem Treiberinstallations-Dienstprogramm (empfohlen) oder manuell installieren. Eine manuelle Installation sollte nur in dem unwahrscheinlichen Fall versucht werden, dass Sie beim Verwenden des Treiberinstallations-Dienstprogramms auf Probleme stoßen.

Verwenden des Treiberinstallations-Dienstprogramms zum Installieren des Treibers

In diesem Abschnitt wird die Installation des erforderlichen driver beschrieben. Der Prozess umfasst das Ausführen eines Skripts, das den erforderlichen driver automatisch herunterlädt, installiert und konfiguriert. Sie können auch Skripte ausführen, um den driver bei Bedarf zu aktualisieren und zu deinstallieren.

Vorbereiten der Installation

  • Vergewissern Sie sich, dass Python 3.6 oder höher auf dem Data Movement-Gateway-Server installiert ist.

    Python ist in den meisten Linux-Distributionen vorinstalliert. Führen Sie den folgenden Befehl aus, um zu prüfen, welche Python-Version auf Ihrem System installiert ist.

    python3 --version

Installieren von driver

So laden Sie den driver herunter und installieren ihn:

  1. Ändern Sie auf dem Data Movement-Gateway-Computer das Arbeitsverzeichnis zu:

    opt/qlik/gateway/movement/drivers/bin

  2. Führen Sie den folgenden Befehl aus:

    Syntax:

    ./install postgres

    Wenn der driver (aufgrund von Zugriffsbeschränkungen oder technischen Fehlern) nicht heruntergeladen werden kann, wird eine Meldung mit Anleitungen dazu angezeigt, wo Sie den driver herunterladen können und wohin er im Data Movement-Gateway-Computer kopiert werden muss. Führen Sie dann den Befehl install postgres erneut aus.

    Andernfalls wird die Endbenutzer-Lizenzvereinbarung für den driver angezeigt.

  3. Gehen Sie folgendermaßen vor:

    • Drücken Sie mehrmals die [Eingabetaste], um langsam durch die Endbenutzer-Lizenzvereinbarung zu scrollen.
    • Drücken Sie mehrmals die Leertaste, um schnell durch die Endbenutzer-Lizenzvereinbarung zu scrollen.
    • Drücken Sie q, um den Lizenztext zu schließen und die Optionen zum Akzeptieren der Endbenutzer-Lizenzvereinbarung anzuzeigen.
  4. Gehen Sie folgendermaßen vor:

    • Geben Sie „y“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung zu akzeptieren und mit der Installation zu beginnen.
    • Geben Sie „n“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung abzulehnen und den Installationsvorgang abzubrechen.
    • Geben Sie „v“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung erneut anzuzeigen.

  5. Der driver wird installiert.

Aktualisieren des driver

Führen Sie den Befehl „update“ aus, wenn Sie vorherige Versionen des driver deinstallieren möchten, bevor Sie den bereitgestellten driver installieren.

So laden Sie den driver herunter und aktualisieren ihn:

  1. Ändern Sie auf dem Data Movement-Gateway-Computer das Arbeitsverzeichnis zu:

    opt/qlik/gateway/movement/drivers/bin

  2. Führen Sie den folgenden Befehl aus:

    Syntax:

    ./update postgres

    Wenn der driver (aufgrund von Zugriffsbeschränkungen oder technischen Fehlern) nicht heruntergeladen werden kann, wird eine Meldung mit Anleitungen dazu angezeigt, wo Sie den driver herunterladen können und wohin er im Data Movement-Gateway-Computer kopiert werden muss. Führen Sie dann den Befehl update postgres erneut aus.

    Andernfalls wird die Endbenutzer-Lizenzvereinbarung für den driver angezeigt.

  3. Gehen Sie folgendermaßen vor:

    • Drücken Sie mehrmals die [Eingabetaste], um langsam durch die Endbenutzer-Lizenzvereinbarung zu scrollen.
    • Drücken Sie mehrmals die Leertaste, um schnell durch die Endbenutzer-Lizenzvereinbarung zu scrollen.
    • Drücken Sie q, um den Lizenztext zu schließen und die Optionen zum Akzeptieren der Endbenutzer-Lizenzvereinbarung anzuzeigen.
  4. Gehen Sie folgendermaßen vor:

    • Geben Sie „y“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung zu akzeptieren und mit der Installation zu beginnen.
    • Geben Sie „n“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung abzulehnen und den Installationsvorgang abzubrechen.
    • Geben Sie „v“ ein und drücken Sie die [Eingabetaste], um die Endbenutzer-Lizenzvereinbarung von Anfang an anzuzeigen.
  5. Der alte driver wird deinstalliert und der neue driver installiert.

Deinstallieren des driver

Führen Sie den Befehl „uninstall“ aus, wenn Sie den driver deinstallieren möchten.

So deinstallieren Sie den driver:

  1. Halten Sie alle Aufgaben an, die für die Verwendung dieses Konnektors konfiguriert sind.

  2. Ändern Sie auf dem Data Movement-Gateway-Computer das Arbeitsverzeichnis zu:

    opt/qlik/gateway/movement/drivers/bin

  3. Führen Sie den folgenden Befehl aus:

    Syntax:

    ./uninstall postgres

    Der driver wird deinstalliert.

Manuelles Installieren des Treibers

Nehmen Sie nur dann eine manuelle Installation des driver vor, wenn die automatische Treiberinstallation nicht erfolgreich abgeschlossen werden konnte.

Laden Sie nach der Installation von Data Movement Gateway die folgenden RPM-Dateien herunter. Direkte Download-Links für die Dateien finden Sie unter binary-artifacts in /opt/qlik/gateway/movement/drivers/manifests/postgres.yaml. Kopieren Sie nach Abschluss des Downloads die Dateien auf den Data Movement Gateway-Rechner.

Wenn Data Movement Gateway unter Red Hat 9.x installiert ist:

  • postgresql<version>-libs-<version>PGDG.rhel9.x86_64.rpm
  • postgresql<version>-<version>PGDG.rhel9.x86_64.rpm
  • postgresql<version>-odbc-<version>PGDG.rhel9.x86_64.

Wenn Data Movement Gateway unter Red Hat 8.x installiert ist:

  • postgresql<version>-libs-<version>PGDG.rhel8.x86_64.rpm
  • postgresql<version>-<version>PGDG.rhel8.x86_64.rpm
  • postgresql<version>-odbc-<version>PGDG.rhel8.x86_64.rpm

Öffnen Sie auf dem Data Movement Gateway-Server eine Shell-Eingabeaufforderung und führen Sie Folgendes durch:

  1. Halten Sie den Data Movement Gateway-Dienst an:

    sudo systemctl stop repagent

  2. Bestätigen Sie optional, dass der Dienst angehalten wurde:

    sudo systemctl status repagent

    Der Status lautet wie folgt:

    Active: inactive (dead) since <timestamp> ago

  3. Installieren Sie die RPM-Dateien.

  4. Ändern Sie das Arbeitsverzeichnis in <Data Movement Gateway-Install_Dir>/bin.

  5. Kopieren Sie den Treiberspeicherort wie folgt in die Datei site_arep_login.sh:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/lib:/usr/lib64:/usr/pgsql-<version>/lib" >> site_arep_login.sh

    Dadurch wird der Treiber zu „LD_LIBRARY_PATH“ hinzugefügt und der Treiberspeicherort in der Datei site_arep_login.sh aktualisiert.

  6. Bestätigen Sie optional, dass der Speicherort des Treibers kopiert wurde:

    cat site_arep_login.sh
  7. Stellen Sie sicher, dass die Datei /etc/odbcinst.ini einen Eintrag für PostgreSQL enthält, wie im folgenden Beispiel gezeigt:

    [PostgreSQL]

    Description = PostgreSQL ODBC driver

    Driver = /usr/pgsql-13/lib/psqlodbc.so

    Setup = /usr/pgsql-13/lib/psqlodbcw.so

    UsageCount = 1

  8. Starten Sie den Data Movement Gateway-Dienst:

    sudo systemctl start repagent

  9. Bestätigen Sie optional, dass der Dienst gestartet wurde:

    sudo systemctl status repagent

    Der Status lautet wie folgt:

    Active: active (running) since <timestamp> ago

Port

Der Port 5432 muss standardmäßig für die ausgehende Kommunikation auf dem Data Movement Gateway-Server geöffnet werden. Sie können dies in den Konnektoreinstellungen ändern.

Erfassen von Änderungen in einer beim Kunden installierten PostgreSQL-Datenbank

  • Die IP-Adresse des Data Movement gateway-Rechners muss zur Konfigurationsdatei pg_hba.conf mit dem Schlüsselwort „replication“ im Datenbankfeld hinzugefügt werden.

    Beispiel:

    host replication all 176.123.1.212/32 trust

  • Stellen Sie sicher, dass das Ausgabe-Plugin test_decoding (zu finden im Paket postgresql12-contrib) installiert ist.

  • Dem in den Verbindungseinstellungen angegebenen Benutzer müssen Lese-Schreibberechtigungen für die Quelldatenbank gewährt werden, um die Erstellen von „Slots“ in der Datenbank zu erlauben. Die Slots sind erforderlich, um die Änderungen zu lesen.

  • Die folgenden Parameter und Werte müssen in der Konfigurationsdatei postgresql.conf festgelegt sein.

    wal_level = logical
    max_replication_slots = number of replication slots

    Dabei muss number of replication slots größer Eins sein und auf die Anzahl der Aufgaben gesetzt sein, die Sie ausführen möchten. Beispielsweise muss für die Ausführung von fünf Aufgaben max_replication_slots = 5 festgelegt werden. Slots öffnen sich automatisch, sobald eine Aufgabe startet, und bleiben offen, selbst wenn die Aufgabe nicht mehr ausgeführt wird. Beachten Sie, dass offene Slots manuell gelöscht werden müssen.

    max_wal_senders = number of concurrent tasks

    Dabei muss number of concurrent tasks größer Eins sein und auf die Anzahl der Aufgaben gesetzt sein, die Sie gleichzeitig ausführen. Beispielsweise muss für die Ausführung von drei Aufgaben gleichzeitig max_wal_senders = 3 festgelegt werden.

  • Der Parameter wal_sender_timeout beendet Verbindungen, die länger als die angegebene Anzahl Millisekunden inaktiv sind. Das Standard-Zeitlimit beträgt 60 Sekunden. Um den Zeitlimit-Mechanismus zu deaktivieren (optional), setzen Sie diesen Parameter auf null.

    Informationshinweis

    Standardmäßig wird der Wert des Parameters wal_sender_timeout vom Server als Millisekunden interpretiert. Um Sekunden anzugeben, hängen Sie ein „s“ an den Wert an, wie im folgenden Beispiel gezeigt:

    wal_sender_timeout=60s

Weitere Informationen zu den Konfigurationsparametern finden Sie im Abschnitt „Replikation“ für die Serverkonfiguration in der PostgreSQL-Onlinehilfe.

Erfassen von Änderungen in Amazon RDS for PostgreSQL

Sie können das AWS-Master-Benutzerkonto für die PostgreSQL-Datenbankinstanz als Benutzer für den Amazon RDS for PostgreSQL-Quell-Endpoint verwenden. Das Master-Benutzerkonto verfügt über die erforderlichen Rollen zum Einrichten von Change Data Capture (CDC).

Wenn Sie nicht das Master-Benutzerkonto verwenden möchten, muss das gewünschte Konto über die Rolle rds_superuser und die Rolle rds_replication verfügen. Die Rolle rds_replication gewährt Berechtigungen zum Verwalten logischer Slots und zum Streamen von Daten anhand logischer Slots.

So aktivieren Sie logische Replikation für eine Amazon RDS PostgreSQL-Datenbankinstanz:

  1. Erstellen Sie eine neue Parametergruppe mit der folgenden Konfiguration:
    1. Legen Sie den Parameter rds.logical_replication in der Parametergruppe der Datenbank auf 1 fest.
    2. max_wal_senders: Die Anzahl der Aufgaben, die parallel ausgeführt werden können.
    3. max_replication_slots: Jede Verbindung (d. h. Aufgabe) erstellt einen neuen Slot; dieser Parameter konfiguriert die Anzahl der gleichzeitigen Verbindungen, die zur Datenbank hergestellt werden können.
  2. Verknüpfen Sie die Amazon RDS-Instanz mit der Parametergruppe.

Erfassen von Änderungen in Microsoft Azure for PostgreSQL

Um Änderungen in Microsoft Azure for PostgreSQL erfassen zu können, müssen Sie die Eigenschaft „replication“ auf „logical“ festlegen, wie in den folgenden Schritten beschrieben.

  1. Öffnen Sie die Azure-CLI und führen Sie den folgenden Befehl aus:

    Informationshinweis

    Sie können die CLI herunterladen oder eine Verbindung über einen Shell-Befehl im Azure-Portal herstellen.

    az postgres server configuration set --resource-group resource-group --server-name server-name --name azure.replication_support --value logical

    az postgres server configuration set --resource-group azuredb --server-name qlik-azure-pg --name azure.replication_support --value logical

     

  2. Starten Sie die Datenbank über die Befehlszeile oder über das Portal neu.

Erfassen von Änderungen über Google Cloud SQL for PostgreSQL

InformationshinweisDiese Funktionalität erfordert Data Movement Gateway 2022.11.42 oder höher.

Um Änderungen an der Datenbank erfassen zu können, müssen Sie logische Replikation einrichten.

So richten Sie logische Replikation ein:

  1. Legen Sie auf der Google Cloud-Plattform die folgenden Flags in den PostgreSQL-Einstellungen fest:

    • cloudsql.logical_decoding=on
    • max_replication_slots: Jede Verbindung (d. h. Aufgabe) erstellt einen neuen Slot; dieser Parameter konfiguriert die Anzahl der gleichzeitigen Verbindungen, die zur Datenbank hergestellt werden können. Wenn Leistungsprobleme auftreten, kann eine Erhöhung dieses Werts möglicherweise helfen.
    • max_wal_senders: Die Anzahl der Aufgaben, die parallel ausgeführt werden können. Wenn Leistungsprobleme auftreten, kann eine Erhöhung dieses Werts möglicherweise helfen.

    Weitere Informationen zu diesen Parametern finden Sie unter https://www.postgresql.org/docs/current/runtime-config-replication.html

  2. Ändern Sie in der Datenbank den Benutzer, der in den connector-Einstellungen angegeben ist (username), um Replikation zu unterstützen:

    ALTER USER username WITH REPLICATION;

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!