Förutsättningar
Följande delavsnitt beskriver förutsättningarna för att arbeta med kopplingen IBM DB2 for LUW.
Innan du kan mellanlagra eller replikera data måste du skapa följande förutsättningar:
-
Installera nödvändig driver på Gateway för dataflytt-servern
Anteckning om informationDetta krävs endast om du har valt att arbeta med Gateway för dataflytt. Information om fördelarna med Gateway för dataflytt och när det krävs finns i Qlik Data Gateway – dataflytt.
-
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 hämta driver, kopiera den till rätt mapp (se nedan) och att köra ett skript som automatiskt installerar och konfigurerar den. 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
-
Hämta IBM Data Server Client "<version>_linuxx64_client.tar.gz" från IBM:s webbplats. Du hittar den version som stöds i binary-artifacts i /opt/qlik/gateway/movement/drivers/manifests/db2.yaml. När hämtningen har slutförts kopierar du filen till:
/opt/qlik/gateway/movement/drivers/db2
Installera driver
Så här installerar du driver:
-
Stoppa tjänsten Gateway för dataflytt:
sudo systemctl stop repagent
-
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
-
På Dataflytt-gatewaydatorn byter du arbetskatalog till:
opt/qlik/gateway/movement/drivers/bin
-
Kör följande kommando:
Syntax:
./install db2
I annat fall visas EULA för driver.
-
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.
-
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.
-
Vänta tills installationen har slutförts (anges med "Slutförd!") och starta sedan Gateway för dataflytt-tjänsten:
sudo systemctl start repagent
-
Du kan även bekräfta att tjänsten har startats:
sudo systemctl status repagent
Statusen ska vara enligt följande:
Active: active (running) since <timestamp> ago
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 uppdaterar du driver:
-
Stoppa tjänsten Gateway för dataflytt:
sudo systemctl stop repagent
-
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
-
På Dataflytt-gatewaydatorn byter du arbetskatalog till:
opt/qlik/gateway/movement/drivers/bin
-
Kör följande kommando:
Syntax:
./update db2
I annat fall visas EULA för driver.
-
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.
-
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.
-
Vänta tills installationen har slutförts (anges med "Slutförd!") och starta sedan Gateway för dataflytt-tjänsten:
sudo systemctl start repagent
-
Du kan även bekräfta att tjänsten har startats:
sudo systemctl status repagent
Statusen ska vara enligt följande:
Active: active (running) since <timestamp> ago
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:
-
Stoppa alla uppgifter som är konfigurerade för att använda denna koppling.
-
På Dataflytt-gatewaydatorn byter du arbetskatalog till:
opt/qlik/gateway/movement/drivers/bin
-
Kör följande kommando:
-syntax
./uninstall db2
driver kommer att avinstalleras.
Installera drivrutinen manuellt
Du bör bara försöka installera driver manuellt om den automatiserade drivrutinsinstallationen inte slutfördes.
Öppna en skalprompt på Gateway för dataflytt-maskinen och gör följande:
-
Stoppa tjänsten Gateway för dataflytt:
sudo systemctl stop repagent
-
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
- Installera IBM Data Client v11.5.8_linuxx64_server_t.tar.gz, välj att installera "CLIENT".
-
Om Gateway för dataflytt-maskinen inte har en DB2-instans skapar du en DB2-instans genom att köra följande kommandon:
adduser <db2_instance_name>
/opt/ibm/db2/V11.5/instance/db2icrt <db2_instance_name>
-
Lägg till DB2-drivrutinens plats i bibliotekssökvägen för Linux.
Gör det genom att lägga till följande rad i site_ arep_login.sh enligt följande:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/lib
där path är CLIENT-sökvägen till drivrutinen.
Exempelvis (med db2clnt1 som instansnamn):
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/db2clnt1/sqllib/lib:/home/db2clnt1/sqllib/lib64/gskit
export DB2INSTANCE=db2clnt1
-
Skapa en ny fil som heter odbcinst.ini under /etc och lägg till följande post:
[IBM DB2 ODBC DRIVER]
Driver = /home/db2clnt1/sqllib/lib/libdb2o.so
fileusage=1
dontdlclose=1
-
Starta Gateway för dataflytt-tjänsten.
sudo systemctl start repagent
-
Du kan även bekräfta att tjänsten har startats:
sudo systemctl status repagent
Statusen ska vara enligt följande:
Active: active (running) since <timestamp> ago
-
Definiera kopplingsinställningarna för IBM DB2 for LUW enligt beskrivningen i IBM DB2 för LUW och klicka på Testa koppling.
Om du får följande fel:
Cannot connect to DB2 LUW Server ODBC unknown error.
RetCode: SQL_ERROR SqlState: NativeError: -1390 Message: [unixODBC][IBM][CLI Driver] SQL10007N Message "0" could not be retrieved. Reason code: "3". ODBC general error.
-
Kör följande kommando:
/opt/ibm/db2/V11.5/bin /db2cli writecfg add -database <db_name_from_koppling_connection_settings> -host <server_name_from_koppling_connection_settings> -port <port_from_koppling_connection_settings>
-
Växla till Gateway för dataflyttbin-katalogen <installationskat>/bin). Stoppa sedan och starta tjänsten Gateway för dataflytt enligt beskrivningen ovan.
-
Aktivera CDC på databasen
Aktivera CDC (Change Data Capture):
- Set the database to be recoverable – För att samla in ändringar kräver Gateway för dataflytt att databasen är konfigurerad så den kan återställas. En databas kan återställas om antingen en eller båda parametrarna LOGARCHMETH1 och LOGARCHMETH2 är inställda som OFF.
-
Permissions – Qlik-användaren måste beviljas följande behörigheter:
-
SYSADM eller DBADM
-
DATAACCESS
-
-
För att aktivera datainsamling från IBM DB2 för LUW, måste källtabellerna skapas enligt följande:
CREATE / ALTER TABLE table-name …. DATA CAPTURE CHANGES [INCLUDE LONGVAR COLUMNS];
Du kan antingen konfigurera Gateway för dataflytt så att den här åtgärden utförs genom att markera Automatically enable DATA CAPTURE CHANGES (kräver administratörsbehörighet) i koppling-inställningarna eller så kan du göra detta manuellt
När alternativet Automatically alter tables to enable data capture (kräver administratörsbehörighet) är valt utför Gateway för dataflytt åtgärden ALTER TABLE när uppgiften börjar köras. Om en ny tabell som stämmer med mönstret för tabellval läggs till (till källdatabasen) när uppgiften redan körs samlar Gateway för dataflytt enbart in ändringar från det att den skapades med egenskapen DATA CAPTURE CHANGE som beskrivs ovan.