AlloyDB Omni 用 orafce をインストールする

AlloyDB Omni には orafce 拡張機能は含まれていませんが、このページの手順に沿って Oracle データベースから追加の関数と演算子を指定することで、既存の AlloyDB Omni インストールに手動で追加できます。

始める前に

システムに AlloyDB Omni がインストールされていることを確認します。

AlloyDB Omni インストールに orafce を追加する

AlloyDB Omni インストールに orafce 拡張機能を追加する手順は次のとおりです。

  1. インストールされている AlloyDB Omni バージョンのラベルを確認します。

    Docker

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

    Podman

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

    出力は次のようになります。

    AlloyDB Omni version: 15.7.0
    

    AlloyDB Omni のバージョン番号をメモします。これは次のステップで必要になります。

  2. OMNI_VERSION 環境変数を設定します。
    OMNI_VERSION=VERSION

    VERSION は、前の手順で確認したデータベース サーバーの完全なバージョンに置き換えます(例: 15.5.3)。

  3. orafce を含む新しい AlloyDB Omni コンテナを作成します。

    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-15-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-15-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. AlloyDB Omni を使用して my-omni-orafce という名前の新しいコンテナを作成します。

    docker run --name my-omni-orafce  -e POSTGRES_PASSWORD=NEW_PASSWORD  -d google/alloydbomni-with-orafce:OMNI_VERSION
  5. orafce 拡張機能を使用してデータベースに接続します。

    docker exec -it my-omni-orafce psql -h localhost -U postgres
  6. orafce を有効にします。
    CREATE EXTENSION IF NOT EXISTS ORAFCE;
  7. orafce がインストールされ、有効になっていることを確認します。

    SELECT oracle.sysdate();

    出力は次のようになります。

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