Instalar o orafce para o AlloyDB Omni

O AlloyDB Omni não inclui a extensão orafce, mas você pode adicioná-la manualmente a uma instalação do AlloyDB Omni seguindo as instruções desta página. A extensão orafce fornece funções e operadores que emulam um subconjunto de funções e pacotes do banco de dados Oracle. Isso simplifica a migração de aplicativos do Oracle para bancos de dados compatíveis com o PostgreSQL, como o AlloyDB Omni.

Antes de começar

Verifique se você instalou o AlloyDB Omni no seu sistema.

Adicionar o orafce à instalação do AlloyDB Omni

Para adicionar a extensão orafce à instalação do AlloyDB Omni, siga estas etapas:

  1. Encontre os identificadores de versão do AlloyDB Omni instalados:

    Docker

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

    Podman

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

    O resultado será assim:

    AlloyDB Omni version: Omniween
    

    Anote o número da versão do AlloyDB Omni. Você vai precisar dele na próxima etapa.

  2. Defina a variável de ambiente OMNI_VERSION:
    OMNI_VERSION=VERSION

    Substitua VERSION pela versão completa do servidor de banco de dados da etapa anterior, por exemplo, 16.3.0.

  3. Crie um novo contêiner do AlloyDB Omni que inclua 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. Crie um novo contêiner com o AlloyDB Omni chamado my-omni-orafce:

    docker run --name my-omni-orafce  -e POSTGRES_PASSWORD=NEW_PASSWORD  -d google/alloydbomni-with-orafce:OMNI_VERSION
  5. Conecte-se ao seu banco de dados com a extensão orafce:

    docker exec -it my-omni-orafce psql -h localhost -U postgres
  6. Ativar o orafce:
    CREATE EXTENSION IF NOT EXISTS ORAFCE;
  7. Confirme se o orafce está instalado e ativado:

    SELECT oracle.sysdate();

    A saída será assim:

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