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

Oracle

I det här delavsnittet beskrivs hur du konfigurerar anslutningen till ett Oracle-mål med Oracle-kopplingen. Oracle kan endast användas som mål i en replikeringsuppgift. Innan du kan ansluta till ett Oracle-mål måste du konfigurera Behörigheter som krävs på databasen. Om du ansluter till Oracle via Gateway för dataflytt måste du även installera drivrutinen enligt beskrivning i Inställning av drivrutin.

Information om begränsningar och överväganden för användning av Oracle-kopplingen finns i Begränsningar och överväganden.

Ställa in anslutningsegenskaper

I det här avsnittet beskrivs de tillgängliga anslutningsegenskaperna. Alla egenskaper krävs om inget annat anges.

Datamål

  • Datagateway: Välj den Gateway för dataflytt som kommer att användas för att testa kopplingen till Oracle-målet. Detta ska vara samma gateway som användes för att komma åt datakällan.

    Anteckning om information
    • Gateway för dataflytt 2023.5.10 eller senare krävs.
    • Du måste också installera lämplig drivrutin på Gateway för dataflytt-maskinen. Information finns i Inställning av drivrutin nedan.

  • Kopplingssträng: Oracle-kopplingssträngen för den Oracle-databas du vill arbeta med.

    Anteckning om information

Kontoegenskaper

User Name och Password: Användarnamn och lösenord för en användare som har behörighet att komma åt Oracle Server-databasen.

Interna egenskaper

Interna egenskaper är till för speciella användarfall och visas därför inte i dialogen. De ska bara användas om Qlik-supporten uppmanar dig att göra det.

Använd Skapa ny- och Avbryt-knapparna till höger om fälten för att lägga till och ta bort egenskaper efter behov.

Namn

Visningsnamnet för anslutningen.

Förutsättningar

Behörigheter som krävs

Den användare som anges i kopplingssträngen måste ha följande rättigheter i Oracle-databasen:

  • CREATE ANY TABLE

  • CREATE ANY INDEXES

  • ALTER ANY TABLE

  • DROP ANY TABLE
  • INSERT ANY TABLE

  • UPDATE ANY TABLE

  • DELETE ANY TABLE

  • SELECT ANY TABLE

  • SELECT all_indexes

  • SELECT all_ind_columns

  • SELECT all_constraints

  • SELECT all_cons_columns

  • LOCK ANY TABLE

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.

  • 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

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 oracle

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

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 oracle

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

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 oracle

    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 drivrutinen oracle-instantclient-basiclite-<version>.x86_64.rpm. Du hittar en direkt nedladdningslänk till den version som stöds i binary-artifacts i /opt/qlik/gateway/movement/drivers/manifests/oracle.yaml. När hämtningen har slutförts kopierar du RPM-filen till Gateway för dataflytt-maskinen.

Öppna sedan en kommandorad i Data Movement gateway 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

  3. Statusen ska vara enligt följande:

    Active: inactive (dead) since <timestamp> ago

  4. Installera drivrutinen (RPM).
  5. Om det inte redan finns på ditt system ska du dessutom skapa en symbolisk länk i $Oracle_Home\lib-katalogen. Ge länken namnet libclntsh.so, och låt den peka på en specifik version av filen.

    lrwxrwxrwx 1 oracle oracle 63 Oct 2 14:16 libclntsh.so -> /u01/app/oracle/home/lib/libclntsh.so.21.1

  6. Byt arbetskatalog till <Data Movement gateway-Install-Dir>/bin och lägg till miljövariabeln LD_LIBRARY_PATH i katalogen för Oracle instant client och i katalogen Data Movement gatewaylib genom att kopiera drivrutinens plats till filen site_arep_login.sh:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/oracle/instantclient_<version>:/opt/qlik/gateway/movement/lib/" >> site_arep_login.sh

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

    cat site_arep_login.sh
  8. Starta Data Movement gateway-tjänsten.

    sudo systemctl start repagent

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

Ansluta till ett autonomt Oracle-datalager

Följande förfarande bör användas vid replikering till ett Oracle Autonomous Data Warehouse.

För att konfigurera kopplingen till Oracle Autonomous Data Warehouse (ADW) behöver du zip-filen Client Credentials (Wallet) som du hämtade när du konfigurerade din Oracle Autonomous Data Warehouse-miljö.

Så här gör du det möjligt för Data Movement gateway att ansluta till Oracle Autonomous Data Warehouse:

  1. Extrahera innehållet i zip-filen Client Credentials till valfri mapp.

    Det kan vara vilken mapp som helst, men för det här förfarandet kommer /home/adw_credentials att vara den Linux-mapp som innehåller de extraherade filerna.

  2. I mappen med de extraherade filerna redigerar du filen sqlnet.ora och ersätter ?/network/admin med sökvägen till mappen med de extraherade filerna:

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adw_credentials")))

    SSL_SERVER_DN_MATCH=yes

  3. Skapa miljövariabeln TNS_ADMIN och ange var autentiseringsfilen finns.

    Kör sedan följande kommando:

    export TNS_ADMIN=/home/adw_credentials

    export PATH=$TNS_ADMIN:$PATH

  4. I Oracle Target-kopplingens fält Kopplingssträng anger du ett av namnen från filen tnsnames.ora.

Mer information om hur du konfigurerar kopplingen till Oracle ADW finns i:

Koppla autonom transaktionsbehandling med hjälp av en klientapplikation

Begränsningar och överväganden

Följande begränsningar gäller när Oracle används som replikeringsmål:

  • Det är inte möjligt att skapa nya scheman i Oracle-databasen. Om du vill replikera till ett nytt schema måste det nya schemats namn redan finnas i måldatabasen. Du bör sedan ange det nya schemanamnet på uppgiftsinställningarnas Metadata-flik.
  • När du arbetar i läget Batchoptimerad tillämpning kan tomma LOB-kolumner replikeras som NULL-värden.

  • Om alternativet Begränsa LOB-storlek till är aktiverat och en tabell innehåller NCLOB-data efter att fullständig laddning har slutförts kommer NCLOB-storleken på målet att förkortas till hälften av den storlek som anges i fältet Begränsa LOB-storlek till. CDC kommer fortfarande att trunkera den enligt gränsen.

Datatyper

Information om inbyggd datatyp bevaras och visas i kolumnen Inbyggd datatyp i datauppsättningsvyer. Om kolumnen inte är synlig måste du öppna kolumnväljaren i datauppsättnignsvyn och välja kolumnen Inbyggd datatyp.

Datatyper
Qlik Cloud Datatyper Oracle-datatyper

BOOLEAN

NUMBER (1)

Byte

RAW (length)

Datum

Datum och tid:

Tid

TIMESTAMP (0)

Datum och tid:

Om skalan <= 9, då TIMESTAMP (skala)

Annars, VARCHAR2 (37)

INT1

NUMBER (3)

INT2

NUMBER (5)

INT4

NUMBER (10)

INT8

NUMBER (19)

Numerisk

NUMBER (p,s)

REAL4

BINARY_FLOAT

REAL8

BINARY_DOUBLE

sträng

Med datumindikering: Datum

Med tidsindikering: TIMESTAMP

Med tidsmarkörindikering: TIMESTAMP

Med tidsmarkör_med_tidszon-indikering: TIMESTAMP WITH TIMEZONE

Med tidsmarkör_med_lokal_tidszon-indikering: TIMESTAMP WITH LOCAL TIMEZONE

Med intervall_år_till_månad-indikering: INTERVAL YEAR TO MONTH

Med intervall_dag_till_sekund-indikering: INTERVAL DAY TO SECOND

Om längden > 4000: CLOB

I alla andra fall: VARCHAR2 (längd)

UINT1

NUMBER (3)

UINT2

NUMBER (5)

UINT4

NUMBER (10)

UINT8

NUMBER (19)

WSTRING

NVARCHAR2 (length)

Observera att när längden är större än 2000 kommer kolumndatatypen att vara NCLOB.

BLOB

BLOB

Anteckning om information
  • Om du vill använda den här datatypen i en replikeringsuppgift måste du aktivera användningen av BLOB för en specifik uppgift.
  • Under CDC eller under fullständig laddning när alternativet Tillåt obegränsad LOB-storlek är aktiverat stöds LOB-datatyper endast i tabeller med en primärnyckel eller ett unikt index.

CLOB

CLOB

Anteckning om information
  • Om du vill använda den här datatypen i en replikeringsuppgift måste du aktivera användningen av CLOB för en specifik uppgift.
  • Under CDC eller under fullständig laddning när alternativet Tillåt obegränsad LOB-storlek är aktiverat stöds LOB-datatyper endast i tabeller med en primärnyckel eller ett unikt index.

NCLOB

NCLOB

Anteckning om information
  • Om du vill använda den här datatypen i en replikeringsuppgift måste du aktivera användningen av NCLOB för en specifik uppgift.
  • Under CDC eller under fullständig laddning när alternativet Tillåt obegränsad LOB-storlek är aktiverat stöds LOB-datatyper endast i tabeller med en primärnyckel eller ett unikt index.

XMLTYPE-måldatatypen är endast relevant i Oracle-till-Oracle-replikeringsuppgifter. Se kommentaren nedan.

XMLTYPE

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!