Associe a um cluster de base de dados

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

  1. 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
  2. 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.

  3. Configure o cliente para usar o certificado da AC para validar a base de dados. Para clientes psql, defina a variável de ambiente PGSSLROOTCERT para o caminho do ficheiro de certificado e a variável de ambiente PGSSLMODE para a sua preferência:

    export PGSSLROOTCERT=path/to/accounts_cert.pem
    export PGSSLMODE="verify-full"
    
  4. 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 certificado accounts_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

  1. 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}'
    
  2. 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
    
  3. Configure o cliente para usar o certificado da AC para validar a base de dados. Para clientes psql, pode definir a variável de ambiente PGSSLROOTCERT para o caminho do ficheiro de certificado e a variável de ambiente PGSSLMODE para a sua preferência:

    export PGSSLROOTCERT=path/to/accounts_cert.pem
    export PGSSLMODE="verify-full"
    
  4. 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 de alloydbomni, postgresql ou oracle.
  • 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) ou ora (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).