Por predefinição, um cluster de base de dados só permite a ligação a partir do cluster de utilizadores e do mesmo projeto.
Para ativar ligações a todos os clusters de bases de dados no seu projeto a partir de outro projeto, consulte o artigo Ative ligações entre projetos.
Para ativar ligações a um cluster de base de dados a partir de endereços IP fora da sua organização do GDC, consulte o artigo Ative ligações externas.
Inicie sessão na consola do GDC com uma conta associada à função project-db-admin
para encontrar as seguintes informações para a ligação ao cluster da base de dados. Estas informações encontram-se na secção Conetividade da página
Serviço de base de dados.
Estes passos incluem um exemplo de ligação à base de dados através do psql
. Os passos exatos variam consoante o software cliente que escolher.
Consola
Navegue para a secção Conetividade da página Serviço de base de dados para o cluster de base de dados. Esta página inclui:
- A palavra-passe da conta de administrador (o nome de utilizador é
dbsadmin
) - Nome do anfitrião e número da porta do ponto final principal do cluster da base de dados
- Se o cluster da base de dados permitir a ligação externa a partir de fora da organização.
- Um comando
psql
para estabelecer ligação ao cluster (para clusters de base de dados do PostgreSQL e do AlloyDB Omni) - Uma string para estabelecer ligação ao cluster com Java Database Connectivity (JDBC) (para clusters de base de dados Oracle)
- Um link para transferir o certificado da autoridade de certificação (AC) do cluster de base de dados
- A palavra-passe da conta de administrador (o nome de utilizador é
Transfira o certificado da AC a partir da consola do GDC na secção Conetividade da página Serviço de base de dados para o seu cluster de base de dados.
Configure o cliente para usar o certificado da AC para validar a base de dados. Para clientes
psql
, defina a variável de ambientePGSSLROOTCERT
para o caminho do ficheiro de certificado e a variável de ambientePGSSLMODE
para a sua preferência:export PGSSLROOTCERT=path/to/accounts_cert.pem export PGSSLMODE="verify-full"
Faça a ligação à base de dados a partir do software cliente. Se estiver a usar o
psql
, execute o seguinte comando:PGPASSWORD=DB_PASSWORD psql -h DB_HOSTNAME -p PORT -U USERNAME -d postgres
Substitua as seguintes variáveis:
path/to/
: o caminho para o certificadoaccounts_cert.pem
.DB_PASSWORD
: a palavra-passe da consola.DB_HOSTNAME
: o nome do anfitrião da base de dados a partir da consola.DB_PORT
: o número da porta da base de dados da consola.DB_USERNAME
: o nome de utilizador da base de dados da consola.
API
Obtenha o ponto final da base de dados a partir do estado do cluster da base de dados:
kubectl get dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME -n USER_PROJECT -o=jsonpath='{.status.primary.url}'
Transfira o certificado da AC do secret do Kubernetes:
kubectl get secret dbs-certificates -n USER_PROJECT -o json | jq -r '.data."dbs-DBENGINE_SHORT_NAME-cert-DBCLUSTER_NAME"' | base64 -d > path/to/ca.crt
Configure o cliente para usar o certificado da AC para validar a base de dados. Para clientes
psql
, pode definir a variável de ambientePGSSLROOTCERT
para o caminho do ficheiro de certificado e a variável de ambientePGSSLMODE
para a sua preferência:export PGSSLROOTCERT=path/to/accounts_cert.pem export PGSSLMODE="verify-full"
Faça a ligação à base de dados a partir do software cliente. Se estiver a usar o
psql
, execute o seguinte comando:PGPASSWORD=DB_PASSWORD psql -h DB_HOSTNAME -p DB_PORT -U DB_USERNAME -d postgres
Substitua as seguintes variáveis:
DBENGINE_NAME
: o nome do motor da base de dados. É uma dealloydbomni
,postgresql
ouoracle
.USER_PROJECT
: o nome do projeto do utilizador onde o cluster de base de dados foi criado.DBENGINE_SHORT_NAME
: o nome abreviado do motor da base de dados. Este é um dos seguintes:al
(AlloyDB Omni),pg
(PostgreSQL) ouora
(Oracle).DBCLUSTER_NAME
: o nome do cluster da base de dados.path/to/
: o caminho para o certificado da AC da base de dados.DB_PASSWORD
: palavra-passe da base de dados para o utilizador administrador.DB_HOSTNAME
: o nome do anfitrião do estado do cluster da base de dados.DB_PORT
: o número da porta da base de dados do estado do cluster da base de dados.DB_USERNAME
: com o nome de utilizador da base de dados (a predefinição édbsadmin
).