Installa orafce per AlloyDB Omni

AlloyDB Omni non include l'estensione orafce, ma puoi aggiungerla manualmente a un'installazione AlloyDB Omni esistente seguendo le istruzioni riportate in questa pagina. L'estensione orafce fornisce funzioni e operatori che simulano un sottoinsieme di funzioni e pacchetti del database Oracle. In questo modo, la migrazione delle applicazioni da Oracle a database compatibili con PostgreSQL, come AlloyDB Omni, è semplificata.

Prima di iniziare

Assicurati di aver installato AlloyDB Omni sul tuo sistema.

Aggiungi orafce all'installazione di AlloyDB Omni

Per aggiungere l'estensione orafce all'installazione di AlloyDB Omni: segui questi passaggi:

  1. Trova le etichette delle versioni di AlloyDB Omni installate:

    Docker

    docker run --rm -it  google/alloydbomni cat VERSION.txt

    Podman

    podman run --rm -it  google/alloydbomni cat VERSION.txt

    L'output è simile al seguente:

    AlloyDB Omni version: Omniween
    

    Prendi nota del numero di versione di AlloyDB Omni, che ti servirà nel passaggio successivo.

  2. Imposta la variabile di ambiente OMNI_VERSION:
    OMNI_VERSION=VERSION

    Sostituisci VERSION con la versione completa del server di database del passaggio precedente, ad esempio 16.3.0.

  3. Crea un nuovo contenitore AlloyDB Omni che includa orafce:

    Linux

          mkdir ~/alloydb-omni-orafce
          tee -a ~/alloydb-omni-orafce/Dockerfile << EOF
          ARG OMNI_VERSION
          FROM google/alloydbomni:${OMNI_VERSION}
          RUN apt-get update && \
                apt-get install -y --no-install-recommends postgresql-16-orafce && \
                apt-get purge -y --auto-remove && \
                rm -rf /var/lib/apt/lists/*
          EOF
          cd ~/alloydb-omni-orafce
          sudo docker build --build-arg OMNI_VERSION=$OMNI_VERSION --tag google/alloydbomni-with-orafce:$OMNI_VERSION .
          

    macOS

          mkdir ~/alloydb-omni-orafce
          tee -a ~/alloydb-omni-orafce/Dockerfile << EOF
          ARG OMNI_VERSION
          FROM google/alloydbomni:${OMNI_VERSION}
          RUN apt-get update && \
                apt-get install -y --no-install-recommends postgresql-16-orafce && \
                apt-get purge -y --auto-remove && \
                rm -rf /var/lib/apt/lists/*
          EOF
          cd ~/alloydb-omni-orafce
          sudo docker build --build-arg OMNI_VERSION=$OMNI_VERSION --tag google/alloydbomni-with-orafce:$OMNI_VERSION .
          

  4. Crea un nuovo contenitore con AlloyDB Omni denominato my-omni-orafce:

    docker run --name my-omni-orafce  -e POSTGRES_PASSWORD=NEW_PASSWORD  -d google/alloydbomni-with-orafce:OMNI_VERSION
  5. Connettiti al tuo database con l'estensione orafce:

    docker exec -it my-omni-orafce psql -h localhost -U postgres
  6. Attiva orafce:
    CREATE EXTENSION IF NOT EXISTS ORAFCE;
  7. Verifica che orafce sia installato e abilitato:

    SELECT oracle.sysdate();

    L'output è simile al seguente:

       postgres=# SELECT oracle.sysdate();
       sysdate
       ---------------------
       2024-06-10 16:36:30
       (1 row)