本頁說明如何手動將 orafce 擴充功能新增至現有的 AlloyDB Omni 安裝項目。orafce 擴充功能提供函式和運算子,可模擬 Oracle 資料庫中的部分函式和套件。這個擴充功能可簡化應用程式從 Oracle 遷移至與 PostgreSQL 相容資料庫 (例如 AlloyDB Omni) 的程序。
事前準備
在系統上安裝 AlloyDB Omni。
在 AlloyDB Omni 安裝中新增 orafce
如要將 orafce 擴充功能新增至 AlloyDB Omni 安裝項目,請按照下列步驟操作:
找出已安裝的 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: 16.3.0
記下 AlloyDB Omni 版本號碼,因為下一個步驟會用到。
建立包含 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-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 .
使用 AlloyDB Omni 建立名為
my-omni-orafce
的新容器:docker build -t google/alloydbomni-with-orafce:latest docker run --name my-omni-orafce -e POSTGRES_PASSWORD=NEW_PASSWORD -d google/alloydbomni-with-orafce:OMNI_VERSION
使用 orafce 擴充功能連線至資料庫:
docker exec -it my-omni-orafce psql -h localhost -U postgres
啟用 orafce:
CREATE EXTENSION IF NOT EXISTS ORAFCE;
確認 orafce 已安裝並啟用:
SELECT oracle.sysdate();
輸出結果會與下列內容相似:
postgres=# SELECT oracle.sysdate(); sysdate --------------------- 2024-06-10 16:36:30 (1 row)