Antes de começar
Instale o AlloyDB Omni no seu sistema.
Adicionar o PostGIS à instalação do AlloyDB Omni
Para adicionar a extensão PostGIS à sua instalação do AlloyDB Omni, siga estas etapas:
- Peça acesso à versão Prévia enviando este formulário.
Inicialize o Red Hat Subscription Manager na VM em que você instalou o servidor do AlloyDB Omni:
sudo dnf install -y subscription-manager sudo subscription-manager register --username "RHSM_USER" --password "RHSM_PASS" --auto-attach --forceSubstitua:
RHSM_USER: o usuário do Red Hat Subscription Manager.RHSM_PASS: a senha do Red Hat Subscription Manager.
Ative o repositório do CodeReady Builder:
sudo subscription-manager repos --enable="codeready-builder-for-rhel-9-$ARCH-rpms"Substitua
ARCHpela arquitetura do RHEL que você quer usar, por exemplo,x86_64.Adicione o repositório Yum do PostgreSQL:
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpmInstale o servidor PostgreSQL e os pacotes de desenvolvimento:
sudo dnf install -y "postgresql17-server"Substitua
OMNI_VERSIONpelo número da versão do AlloyDB Omni, que é17.Instale a extensão PostGIS:
sudo dnf install -y postgis35_17Crie os symlinks necessários para que as extensões estejam nos caminhos esperados:
set -e PGVER="17" sudo mkdir -p "/usr/lib/postgresql/${PGVER}/share/extension" for file in /usr/pgsql-${PGVER}/share/extension/*; do target="/usr/lib/postgresql/${PGVER}/share/extension/$(basename "$file")" if [[ ! -e "$target" ]]; then sudo ln -s "$file" "$target" || (echo "Failed to link \"$file\" to \"$target\", exiting." && exit 1) echo "Created extension link for $(basename "$file")" else echo "Target $target already exists." fi done sudo mkdir -p "/usr/lib/postgresql/${PGVER}/lib" for file in /usr/pgsql-${PGVER}/lib/*; do target="/usr/lib/postgresql/${PGVER}/lib/$(basename "$file")" if [[ ! -e "$target" ]]; then sudo ln -s "$file" "$target" || (echo "Failed to link \"$file\" to \"$target\", exiting." && exit 1) echo "Created lib link for $(basename "$file")" else echo "Target $target already exists." fi fi doneConecte-se ao banco de dados com a extensão PostGIS:
/usr/lib/postgresql/17/bin/psql -h localhost -U postgresAtive o PostGIS:
CREATE EXTENSION IF NOT EXISTS POSTGIS;Confirme se o PostGIS está instalado e ativado:
SELECT postgis_full_version();O resultado será o seguinte:
postgres=# SELECT postgis_full_version(); postgis_full_version -------------------------------------------------------------------------------------------------------------------------------- POSTGIS="3.3.2 4975da8" [EXTENSION] PGSQL="150" GEOS="3.11.1-CAPI-1.17.1" PROJ="9.1.1" LIBXML="2.9.14" LIBJSON="0.16" LIBPROTOBUF="1.4.1" WAGYU="0.5.0 (Internal)" (1 row)