Vereisten
Voordat u gegevens tijdelijk kunt opslaan of repliceren, moet u zorgen dat er aan de volgende vereisten is voldaan:
-
Installeer de vereiste driver op de server van de Gateway voor gegevensverplaatsing
InformatieDit is alleen vereist als u hebt opgegeven dat u werkt met Gateway voor gegevensverplaatsing. Raadpleeg Qlik Gegevensgateway - Gegevensverplaatsing voor informatie over de voordelen van Gateway voor gegevensverplaatsing en wanneer deze is vereist.
Let op dat Gateway voor gegevensverplaatsing niet beschikbaar is met het Qlik Talend Cloud Starter-abonnement.
-
Verleen de vereiste machtigingen voor de gegevensbron
-
De gegevensbronconnector configureren
Setup stuurprogramma
U kunt het driver installeren met het installatieprogramma (aanbevolen) of handmatig. U moet een handmatige installatie alleen uitvoeren als er een probleem ontstaat bij het hulpprogramma.
Het hulpprogramma gebruiken om het stuurprogramma te installeren
In deze sectie wordt beschreven hoe u het vereiste driver installeert. Het proces omvat het uitvoeren van een script dat automatisch het vereiste driver downloadt, installeert en configureert. U kunt indien nodig ook scripts uitvoeren om het driver bij te werken en verwijderen.
De installatie voorbereiden
-
Controleer of Python 3.6 of hoger is geïnstalleerd op de Gegevensverplaatsing-gatewayserver.
Python is al geïnstalleerd op de meeste Linux-distributies. U kunt controleren welke Python-versie is geïnstalleerd op uw systeem door de volgende opdracht uit te voeren:
python3 --version
De driver installeren
Ga als volgt te werk om het driverte downloaden en installeren:
-
Op de Gegevensverplaatsing-gatewaymachine wijzigt u de werkdirectory in:
opt/qlik/gateway/movement/drivers/bin
-
Voer dan de volgende opdracht uit:
Syntaxis:
./install postgres
Als het driver niet kan worden gedownload (vanwege toegangsbeperkingen of technische problemen), wordt er een melding getoond met de instructies voor het downloaden van het driver en waarnaar u het moet kopiëren op de Gegevensverplaatsing-gatewaymachine. Nadat u dit hebt gedaan, voert u de opdracht install postgres nogmaals uit.
Anders wordt de gebruiksrechtovereenkomst voor het driver getoond.
-
Voer een van de volgende handelingen uit:
- Druk herhaaldelijk op [Enter] om langzaam door de gebruiksrechtovereenkomst te scrollen.
- Druk herhaaldelijk op de spatiebalk om snel door de gebruiksrechtovereenkomst te scrollen.
- Druk op q om de licentietekst af te sluiten en de opties te tonen voor het aanvaarden van de gebruiksrechtovereenkomst.
-
Voer een van de volgende handelingen uit:
- Typ "y" en druk op [Enter] om de gebruiksrechtovereenkomst te accepteren en de installatie te starten.
- Typ "n" en druk op [Enter] om de gebruiksrechtovereenkomst af te wijzen en de installatie af te sluiten.
-
Typ "v" en druk op [Enter] om de gebruiksrechtovereenkomst nogmaals te tonen.
Het driver wordt geïnstalleerd.
Het driver bijwerken
Voer de update-opdracht uit als u eerdere versies van het driver wilt verwijderen voordat u het meegeleverde driver installeert.
Ga als volgt te werk om het driver te downloaden en bij te werken:
-
Op de Gegevensverplaatsing-gatewaymachine wijzigt u de werkdirectory in:
opt/qlik/gateway/movement/drivers/bin
-
Voer dan de volgende opdracht uit:
Syntaxis:
./update postgres
Als het driver niet kan worden gedownload (vanwege toegangsbeperkingen of technische problemen), wordt er een melding getoond met de instructies voor het downloaden van het driver en waarnaar u het moet kopiëren op de Gegevensverplaatsing-gatewaymachine. Nadat u dit hebt gedaan, voert u de opdracht update postgres nogmaals uit.
Anders wordt de gebruiksrechtovereenkomst voor het driver getoond.
-
Voer een van de volgende handelingen uit:
- Druk herhaaldelijk op [Enter] om langzaam door de gebruiksrechtovereenkomst te scrollen.
- Druk herhaaldelijk op de spatiebalk om snel door de gebruiksrechtovereenkomst te scrollen.
- Druk op q om de licentietekst af te sluiten en de opties te tonen voor het aanvaarden van de gebruiksrechtovereenkomst.
-
Voer een van de volgende handelingen uit:
- Typ "y" en druk op [Enter] om de gebruiksrechtovereenkomst te accepteren en de installatie te starten.
- Typ "n" en druk op [Enter] om de gebruiksrechtovereenkomst af te wijzen en de installatie af te sluiten.
- Typ "v" en druk op [Enter] om de gebruiksrechtovereenkomst nogmaals vanaf het begin te tonen.
Het oude driver wordt verwijderd en het nieuwe driver wordt geïnstalleerd.
Het driver verwijderen
Voer de uninstall-opdracht uit als u het driver wilt verwijderen.
Ga als volgt te werken om het driver te verwijderen:
-
Stop alle taken die zijn geconfigureerd om deze connector te gebruiken.
-
Op de Gegevensverplaatsing-gatewaymachine wijzigt u de werkdirectory in:
opt/qlik/gateway/movement/drivers/bin
-
Voer dan de volgende opdracht uit:
Syntaxis:
./uninstall postgres
driver wordt verwijderd.
Het stuurprogramma handmatig installeren
U moet het driver alleen handmatig uitvoeren als de geautomatiseerde installatie van het stuurprogramma niet is voltooid.
Nadat Gateway voor gegevensverplaatsing is geïnstalleerd, downloadt u de volgende RPM-bestanden. U vindt directe downloadlinks voor de bestanden onder binary-artifacts in /opt/qlik/gateway/movement/drivers/manifests/postgres.yaml. Nadat de download is voltooid, kopieert u de bestanden naar de machine met de Gateway voor gegevensverplaatsing.
Als Gateway voor gegevensverplaatsing is geïnstalleerd op 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.
Als Gateway voor gegevensverplaatsing is geïnstalleerd op 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
Open op de Data Movement gateway-server een opdrachtregel en doe het volgende:
-
Stop de Data Movement gateway-service:
sudo systemctl stop repagent
-
Bevestig eventueel dat de service is gestopt:
sudo systemctl status repagent
De status zou als volgt moeten zijn:
Active: inactive (dead) since <timestamp> ago
-
Installeer de RPM-bestanden.
-
Wijzig de werkmap in <Data Movement gateway-Install-Dir>/bin.
-
Kopieer de locatie van het stuurprogramma als volgt naar het site_arep_login.sh-bestand:
echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/lib:/usr/lib64:/usr/pgsql-<version>/lib" >> site_arep_login.sh
Hiermee wordt het stuurprogramma toevoegd aan "LD_LIBRARY_PATH" en wordt de locatie van het stuurprogramma bijgewerkt in het site_arep_login.sh-bestand.
-
Bevestig eventueel dat de locatie van stuurpogramma is gekopieerd:
cat site_arep_login.sh
-
Zorg ervoor dat het /etc/odbcinst.ini-bestand een vermelding voor PostgreSQL bevat, zoals in het volgende voorbeeld:
[PostgreSQL]
Description = PostgreSQL ODBC driver
Driver = /usr/pgsql-13/lib/psqlodbc.so
Setup = /usr/pgsql-13/lib/psqlodbcw.so
UsageCount = 1
-
Start de Data Movement gateway-service:
sudo systemctl start repagent
-
Bevestig eventueel dat de service is gestart:
sudo systemctl status repagent
De status zou als volgt moeten zijn:
Active: active (running) since <timestamp> ago
Poort
Poort 5432 moet standaard zijn geopend voor uitgaande communicatie op de Data Movement gateway-server. U kunt dit wijzigen in de connectorinstellingen.
Vastleggen van wijzigingen uit een door de klant geïnstalleerde PostgreSQL-database
-
Het IP-adres van de Data Movement gateway-machine moet toegevoegd worden aan het the pg_hba.conf configuratiebestand met het trefwoord "replication" in het databaseveld.
Voorbeeld:
host replication all 176.123.1.212/32 trust
-
Controleer of de invoegtoepasisng voor de test_decoding uitvoer (in het postgresql12-contrib pakket) is geïnstalleerd.
-
De gebruiker die is opgegeven in de verbindingsinstellingen moet beschikken over lees- en schrijfmachtigingen voor de brondatabase om "slots" voor de database te kunnen maken. De slots zijn vereist voor het lezen van de wijzigingen.
-
De volgende paramters en waarden moeten in het postgresql.conf configuratiebestand worden ingesteld.
wal_level = logicalmax_replication_slots = number of replication slotsWaar number of replication slots groter moet zijn dan één en moet worden ingesteld op basis van het aantal taken dat u wilt uitvoeren. Voor het uitvoeren van vijf taken moet u bijvoorbeeld max_replication_slots = 5 instellen. Er gaan automatisch slots open zodra een taak start, en deze blijven open zelfs als een taak niet meer wordt uitgevoerd. Houd er rekening mee dat u slots handmatig moet verwijderen.
max_wal_senders = number of concurrent tasks
Waar number of concurrent tasks groter moet zijn dan één en moet worden ingesteld op basis van het aantal taken dat u momenteel uitvoert. Voor het uitvoeren van drie gelijktijdige taken moet u bijvoorbeeld max_wal_senders = 3 instellen.
-
De wal_sender_timeout parameter beëindigt verbindingen die langer inactief zijn dan het opgegeven aantal milliseconden. De standaard time-outtijd is 60 seconden. Als u de time-out wilt uitschakelen (optioneel), moet u deze parameter instellen op nul.
InformatieDe waarde van de wal_sender_timeout parameter wordt door de server standaard in milliseconden geïnterpreteerd. Als u specifiek seconden wilt opgeven, voeg dan een "s" toe aan de waarde zoals in het volgende voorbeeld:
wal_sender_timeout=60s
Voor meer informatie over de configuratie van de parameters, raadpleegt u de sectie Replication onder Serverconfiguratie in de PostgreSQL online help.
Vastleggen van wijzigingen uit Amazon RDS for PostgreSQL
U kunt het AWS-mastergebruikersaccount gebruiken voor het exemplaar van de PostgreSQL-database als de gebruiker voor het broneindpunt van Amazon RDS for PostgreSQL. Het mastergebruikersaccount beschikt over de vereiste rollen om Change Data Capture (CDC) in te stellen.
Als u het mastergebruikersaccount liever niet gebruikt, moet het gewenste account beschikken over de rol rds_superuser en de rol rds_replication. De rol rds_replication verleent machtigingen voor het beheren van logische slots om gegevens te streamen met behulp van logische slots.
Als u logische replication wilt inschakelen voor een exemplaar van de Amazon RDS PostgreSQL-database.
- Maak een nieuwe parametergroep met de volgende configuratie:
- Stel de parameter rds.logical_replication in de parametergroep voor de database in op 1.
- max_wal_senders – Het aantal taken dat parrallel kan worden uitgevoerd.
- max_replication_slots – Elke verbinding (d.w.z taak) maakt een nieuw slot; deze parameter configureert het aantal gelijktijdige verbindingen die in de database tot stand kunnen worden gebracht.
-
Koppel het Amazon RDS-exemplaat naar de parametergroep.
Vastleggen van wijzigingen uit Microsoft Azure for PostgreSQL
Om wijzigingen van Microsoft Azure voor PostgreSQL vast te leggen, moet u de eigenschap 'replication' instellen op 'logisch', zoals beschreven in de onderstaande stappen.
-
Open de Azure CLI en voer de volgende opdracht uit:
InformatieU kunt de CLI downloaden of verbinden via een shellopdracht op de Azure-portal.
Syntaxis:
az postgres server configuration set --resource-group resource-group --server-name server-name --name azure.replication_support --value logical
Voorbeeld:
az postgres server configuration set --resource-group azuredb --server-name qlik-azure-pg --name azure.replication_support --value logical
- Start de database opnieuw op (met de opdrachtregel of via de portal).
Vastleggen van wijzigingen uit Google Cloud SQL for PostgreSQL
U moet logische replication instellen als u wijzigingen van de database wilt vastleggen.
Ga als volgt te werk om logische replication in te stellen:
-
Op het Google Cloud-platform stelt u de volgende vlaggen in de instellingen van PostgreSQL in:
- cloudsql.logical_decoding=on
- max_replication_slots: Elke verbinding (d.w.z taak) maakt een nieuw slot; deze parameter configureert het aantal gelijktijdige verbindingen die in de database tot stand kunnen worden gebracht. Als u prestatieproblemen ervaart, kan het helpen om de waarde te verhogen.
- max_wal_senders: Het aantal taken dat parallel kan worden uitgevoerd. Als u prestatieproblemen ervaart, kan het helpen om de waarde te verhogen.
Voor meer informatie over deze parameters raadpleegt u https://www.postgresql.org/docs/current/runtime-config-replication.html
-
In de database wijzigt u de gebruiker die is opgegeven in de instellingen van connector (username) voor de ondersteuning van replication:
ALTER USER username WITH REPLICATION;