Gå till huvudinnehåll Gå till ytterligare innehåll

Förutsättningar

Innan du kan mellanlagra eller replikera data måste du skapa följande förutsättningar:

  • Installera nödvändig driver på Data Movement-gatewayservern

  • Bevilja nödvändiga behörigheter på datakällan

  • Konfigurera datakällans koppling

Inställning av drivrutin

Du kan installera driver med verktyget för installation av drivrutiner (rekommenderas) eller manuellt. Manuell installation ska bara användas om det mot förmodan skulle inträffa ett problem med verktyget för installation av drivrutiner.

Använda verktyget för installation av drivrutiner för att installera drivrutinen

I det här delavsnittet beskrivs hur driver som krävs installeras. Processen innebär att ett skript körs som automatiskt hämtar, installerar och konfigurerar den nödvändiga driver. Du kan också köra skript som uppdaterar och avinstallerar driver efter behov.

Förbereda installationen

  • Kontrollera att Python 3.6 eller senare är installerad på Dataflytt-gatewayservern.

    Python kommer förinstallerad på de flesta Linuxdistributioner. Du kan kontrollera vilken Pythonversion som är installerad på ditt system genom att köra följande kommando:

    python3 --version

Installera driver

Så här hämtar och installerar du driver:

  1. Dataflytt-gatewaydatorn byter du arbetskatalog till:

    opt/qlik/gateway/movement/drivers/bin

  2. Kör följande kommando:

    Syntax:

    ./install postgres

    Om driver inte kan hämtas (på grund av åtkomstbegränsningar eller tekniska problem) visas ett meddelande som beskriver var du kan hämta driver och vart du ska kopiera den på Dataflytt-gatewaydatorn. När du har gjort detta kör du install postgres-kommandot igen.

    I annat fall visas EULA för driver.

  3. Gör ett av följande:

    • Tryck på [Enter] flera gånger för att långsamt rulla genom EULA.
    • Tryck på mellanslagstangenten flera gånger för att snabbt rulla genom EULA.
    • Tryck på q för att lämna avtalstexten. Godkännandealternativen för EULA visas.
  4. Gör något av följande:

    • Skriv in "y" och tryck på [Enter] för att godkänna EULA och börja med installationen.
    • Skriv in "n" och tryck på [Enter] för att avböja EULA och avsluta installationen.
    • Skriv in "v" och tryck på [Enter] för att visa EULA igen.

  5. driver kommer att installeras.

Uppdatering av driver

Kör uppdateringskommandot om du vill avinstallera tidigare versioner av driver innan du installerar den tillhandahållna driver.

Så här hämtar och uppdaterar du driver:

  1. Dataflytt-gatewaydatorn byter du arbetskatalog till:

    opt/qlik/gateway/movement/drivers/bin

  2. Kör följande kommando:

    Syntax:

    ./update postgres

    Om driver inte kan hämtas (på grund av åtkomstbegränsningar eller tekniska problem) visas ett meddelande som beskriver var du kan hämta driver och vart du ska kopiera den på Dataflytt-gatewaydatorn. När du har gjort detta kör du update postgres-kommandot igen.

    I annat fall visas EULA för driver.

  3. Gör ett av följande:

    • Tryck på [Enter] flera gånger för att långsamt rulla genom EULA.
    • Tryck på mellanslagstangenten flera gånger för att snabbt rulla genom EULA.
    • Tryck på q för att lämna avtalstexten. Godkännandealternativen för EULA visas.
  4. Gör något av följande:

    • Skriv in "y" och tryck på [Enter] för att godkänna EULA och börja med installationen.
    • Skriv in "n" och tryck på [Enter] för att avböja EULA och avsluta installationen.
    • Skriv in "v" och tryck på [Enter] för att granska EULA från början.
  5. Den gamla driver avinstalleras och den nya driver installeras.

Avinstallera driver

Kör avinstalleringskommandot om du vill avinstallera driver.

Så här avinstallerar du driver:

  1. Stoppa alla uppgifter som är konfigurerade för att använda denna koppling.

  2. Dataflytt-gatewaydatorn byter du arbetskatalog till:

    opt/qlik/gateway/movement/drivers/bin

  3. Kör följande kommando:

    -syntax

    ./uninstall postgres

    driver kommer att avinstalleras.

Installera drivrutinen manuellt

Du bör bara försöka installera driver manuellt om den automatiserade drivrutinsinstallationen inte slutfördes.

Efter att Gateway för dataflytt har installerats hämtar du följande RPM-filerr. Du hittar direkta nedladdningslänkar till filerna i binary-artifacts i /opt/qlik/gateway/movement/drivers/manifests/postgresql.yaml. När hämtningen har slutförts kopierar du filerna till Gateway för dataflytt-maskinen.

När Gateway för dataflytt installeras på Red Hat 9.x:

  • 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.

När Gateway för dataflytt installeras på Red Hat 8.x:

  • 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

Öppna en kommandorad på Data Movement gateway-servern och gör följande:

  1. Stoppa tjänsten Data Movement gateway:

    sudo systemctl stop repagent

  2. Om du vill kan du bekräfta att tjänsten har stoppats:

    sudo systemctl status repagent

    Statusen ska vara enligt följande:

    Active: inactive (dead) since <timestamp> ago

  3. Installera RPM-filerna.

  4. Ändra arbetskatalogen till <Data Movement gateway-Install-Dir>/bin.

  5. Kopiera drivrutinens plats till filen site_arep_login.sh enligt följande:

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

    Detta kommer att lägga till drivrutinen i "LD_LIBRARY_PATH" och uppdatera drivrutinsplatsen i filen site_arep_login.sh.

  6. Om du vill kan du bekräfta att drivrutinsplatsen kopierades:

    cat site_arep_login.sh
  7. Säkerställer att /etc/odbcinst.ini-filen innehåller en post för PostgreSQL, som i följande exempel:

    [PostgreSQL]

    Description = PostgreSQL ODBC driver

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

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

    UsageCount = 1

  8. Starta Data Movement gateway-tjänsten.

    sudo systemctl start repagent

  9. Om du vill kan du bekräfta att tjänsten har startats:

    sudo systemctl status repagent

    Statusen ska vara enligt följande:

    Active: active (running) since <timestamp> ago

Port

Som standard måste port 5432 öppnas för utgående kommunikation på server Data Movement gateway. Du kan ändra detta i anslutningsinställningarna.

Samla in ändringar från en kundinstallerad PostgreSQL-databas

  • IP-adressen för Data Movement gateway-maskinen måste läggas till i konfigurationsfilen pg_hba.conf med nyckelordet "replication" i databasfältet.

    Exempel:

    host replication all 176.123.1.212/32 trust

  • Kontrollera att insticksprogrammet test_decoding-utdatapluginmodul (finns i paketet postgresql12-contrib) är installerat.

  • Användaren som anges i anslutningsinställningarna måste ha skriv- och läsbehörighet till källdatabasen för att kunna skapa "slots" i databasen. Dessa slots krävs för att ändringarna ska kunna läsas.

  • Följande parametrar och värden måste ställas in i postgresql.conf konfigurationsfilen.

    wal_level = logical
    max_replication_slots = number of replication slots

    Där number of replication slots måste vara större än ett och ska anges i enlighet med det antal uppgifter som du vill köra. Om du till exempel vill köra fem uppgifter ska du ange max_replication_slots = 5. Slots öppnas automatiskt så snart en uppgift startar och förblir öppna även när uppgiften inte längre pågår. Observera att öppna slots måste tas bort manuellt.

    max_wal_senders = number of concurrent tasks

    Där number of concurrent tasks måste vara större än ett och ska ställas in i enlighet med det antal uppgifter som körs samtidigt. Om du till exempel vill köra tre uppgifter samtidigt ska du ange max_wal_senders = 3.

  • wal_sender_timeout-parametern avslutar anslutningar som är inaktiva längre än det angivna antalet millisekunder. Standardtidsgränsen är 60 sekunder. Om du vill inaktivera tidsgränsmekanismen (valfritt) ställer du in den här parametern på noll.

    Anteckning om information

    Som standard tolkas värdet för wal_sender_timeout-parametern av servern som millisekunder. Om du uttryckligen vill ange sekunder lägger du till ett "s" till värdet som i följande exempel:

    wal_sender_timeout=60s

Mer information om konfigurationsparametrarna finns i delavsnittet Replikering under serverkonfiguration i Onlinehjälpen för PostgreSQL.

Samla in ändringar från Amazon RDS för PostgreSQL

Du kan använda AWS-huvudanvändarkontot för PostgreSQL-databasinstansen som användare för Amazon RDS för PostgreSQL-källans slutpunkt. Huvudanvändarkontot har de nödvändiga rollerna som gör att det kan konfigurera Change Data Capture (CDC).

Om du föredrar att inte använda huvudanvändarkontot måste kontot du vill använda ha rds_superuser-rollen och rds_replication-rollen. Rollen rds_replication ger behörighet att hantera logiska platser och att strömma data med hjälp av logiska platser.

Så här aktiverar du logisk replikering för en Amazon RDS PostgreSQL-databasinstans:

  1. Skapa en ny parametergrupp med följande konfiguration:
    1. Ställ in parametern rds.logical_replication i databasparametergruppen på 1.
    2. max_wal_senders – Antalet uppgifter som kan köras parallellt.
    3. max_replication_slots – Varje anslutning (d.v.s. uppgift) skapar en ny plats. Denna parameter konfigurerar mängden samtidiga anslutningar som kan upprättas till databasen.
  2. Länka Amazon RDS-instansen till parametergruppen.

Samla in ändringar från Microsoft Azure för PostgreSQL

För att kunna registrera ändringar från Microsoft Azure för PostgreSQL, måste du ställa in egenskapen ”replication” till ”logical”, såsom beskrivs i stegen nedan.

  1. Öppna Azure CLI och kör följande kommando:

    Anteckning om information

    Du kan ladda ner CLI eller ansluta via ett skalkommando på Azure-portalen.

    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. Starta om databasen (med kommandoraden eller via portalen).

Samla in ändringar från Google Cloud SQL for PostgreSQL

Anteckning om informationFör den här funktionen krävs Gateway för dataflytt 2022.11.42 eller senare.

För att kunna registrera ändringar i databasen måste du konfigurera logisk replikering.

Konfigurera logisk replikering:

  1. På Google Cloud-plattformen konfigurerar du följande flaggor i PostgreSQL-inställningarna:

    • cloudsql.logical_decoding=on
    • max_replication_slots: Varje anslutning (d.v.s. uppgift) skapar en ny plats. Denna parameter konfigurerar mängden samtidiga anslutningar som kan upprättas till databasen. Om du får problem med prestandan kan det hjälpa att öka det här värdet.
    • max_wal_senders: Antalet uppgifter som kan köras parallellt. Om du får problem med prestandan kan det hjälpa att öka det här värdet.

    Mer information om de här parametrarna finns i https://www.postgresql.org/docs/current/runtime-config-replication.html

  2. I databasen ändrar du användaren som anges i connector-inställningarna (username) så att den stöder replikering.

    ALTER USER username WITH REPLICATION;

Var den här sidan till hjälp för dig?

Om du hittar några fel på denna sida eller i innehållet – ett stavfel, ett steg som saknas eller ett tekniskt fel – berätta för oss så att vi kan blir bättre!