Menginstal Orafce untuk AlloyDB Omni

AlloyDB Omni tidak menyertakan ekstensi Orafce, tetapi Anda dapat menambahkannya secara manual ke penginstalan AlloyDB Omni yang ada dengan mengikuti petunjuk di halaman ini.

Sebelum memulai

Pastikan Anda memenuhi persyaratan sistem berikut:

Menambahkan Orafce ke penginstalan AlloyDB Omni

Untuk menambahkan ekstensi Orafce ke penginstalan AlloyDB Omni, ikuti langkah-langkah berikut:

  1. Temukan label versi AlloyDB Omni yang diinstal:
    sudo alloydb version

    Outputnya mirip dengan hal berikut ini:

    AlloyDB Omni CLI version: 1.0
    AlloyDB Omni database server version: 15.2.0
    

    Catat nomor versi server database; Anda memerlukannya di langkah berikutnya.

  2. Tetapkan variabel lingkungan OMNI_VERSION:
    OMNI_VERSION=VERSION

    Ganti VERSION dengan versi server database lengkap dari langkah sebelumnya—misalnya, 15.2.0.

  3. Buat penampung AlloyDB Omni baru yang menyertakan Orafce:
    mkdir ~/alloydb-omni-orafce
    tee -a ~/alloydb-omni-orafce/Dockerfile << EOF
    ARG OMNI_VERSION
    
    FROM postgres:15-bookworm as postgres
    
    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/*
    
    FROM gcr.io/alloydb-omni/pg-service:${OMNI_VERSION}
    
    COPY --from=postgres /usr/lib/postgresql/15/lib/orafce.so /lib/orafce.so
    COPY --from=postgres /usr/share/postgresql/15/extension/orafce* /share/extension/
    
    COPY --from=postgres /usr/lib/x86_64-linux-gnu/ /usr/lib/x86_64-linux-gnu/
    COPY --from=postgres /lib/x86_64-linux-gnu/ /lib/x86_64-linux-gnu/
    EOF
    
    cd ~/alloydb-omni-orafce
    
    sudo docker build --build-arg OMNI_VERSION=$OMNI_VERSION --tag gcr.io/alloydb-omni/pg-service-with-orafce:$OMNI_VERSION .
  4. Hentikan server database:
    sudo alloydb database-server stop
    
  5. Buka /var/alloydb/config/dataplane.conf di editor teks.
  6. Ubah baris yang menentukan variabel PG_IMAGE agar merujuk ke penampung yang Anda build di langkah sebelumnya:
    PG_IMAGE=gcr.io/alloydb-omni/pg-service-with-orafce
    
  7. Mulai AlloyDB Omni:
    sudo alloydb database-server start
    
  8. Menghubungkan ke database Anda:
    sudo docker exec -it pg-service psql -h localhost -U postgres
    
  9. Aktifkan Orafce:
    CREATE EXTENSION IF NOT EXISTS ORAFCE;
  10. Pastikan Orafce telah diinstal dan diaktifkan:
    SELECT oracle.sysdate();