Conectar-se a um cluster de banco de dados

Por padrão, um cluster de banco de dados só permite conexão de dentro do cluster de usuário e do mesmo projeto.

Para ativar conexões com todos os clusters de banco de dados no seu projeto de outro projeto, consulte Ativar conexões entre projetos.

Para ativar conexões com um cluster de banco de dados de endereços IP fora da sua organização do GDC, consulte Ativar conexões externas.

Faça login no console do GDC com uma conta vinculada ao papel de administrador do banco de dados do projeto para encontrar as seguintes informações para se conectar ao cluster de banco de dados. Essas informações estão na seção Conectividade da página Serviço de banco de dados.

Estas etapas incluem um exemplo de conexão com o banco de dados usando psql. As etapas exatas variam dependendo do software cliente escolhido.

Console

  1. Navegue até a seção Conectividade da página Serviço de banco de dados do cluster de banco de dados. Esta página inclui:

    • A senha da conta de administrador (o nome de usuário é dbsadmin)
    • O nome do host e o número da porta do endpoint principal do cluster de banco de dados
    • Se o cluster de banco de dados permite conexão externa de fora da organização.
    • Um comando psql para se conectar ao cluster
    • Um link para fazer o download do certificado da autoridade de certificação (CA) do cluster de banco de dados
  2. Faça o download do certificado de CA no console do GDC na seção Conectividade da página Serviço de banco de dados do cluster de banco de dados.

  3. Configure o cliente para usar o certificado de CA para verificar o banco de dados. Para clientes psql, defina a variável de ambiente PGSSLROOTCERT como o caminho do arquivo de certificado e a variável de ambiente PGSSLMODE como sua preferência:

    export PGSSLROOTCERT=path/to/accounts_cert.pem
    export PGSSLMODE="verify-full"
    
  4. Conecte-se ao banco de dados no software cliente. Se você estiver usando 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 senha do console.
  • DB_HOSTNAME: o nome do host do banco de dados do console.
  • DB_PORT: o número da porta do banco de dados do console.
  • DB_USERNAME: o nome de usuário do banco de dados do console.

API

  1. Recupere o endpoint do banco de dados no status do cluster de banco de dados:

    kubectl get dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -n USER_PROJECT -o=jsonpath='{.status.primary.url}'
    
  2. Faça o download do certificado de CA no Secret do Kubernetes:

    kubectl get secret dbs-certificates -n USER_PROJECT -o json | jq -r '.data."dbs-pg-cert-DBCLUSTER_NAME"' | base64 -d > path/to/ca.crt
    
  3. Configure o cliente para usar o certificado de CA para verificar o banco de dados. Para clientes psql, é possível definir a variável de ambiente PGSSLROOTCERT como o caminho do arquivo de certificado e a variável de ambiente PGSSLMODE como sua preferência:

    export PGSSLROOTCERT=path/to/ca.crt
    export PGSSLMODE="verify-full"
    
  4. Conecte-se ao banco de dados no software cliente. Se você estiver usando 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:

  • USER_PROJECT: o nome do projeto do usuário em que o cluster de banco de dados foi criado.
  • DBCLUSTER_NAME: o nome do cluster de banco de dados.
  • path/to/: o caminho para o certificado de CA do banco de dados.
  • DB_PASSWORD: senha do banco de dados para o usuário administrador.
  • DB_HOSTNAME: o nome do host do status do cluster de banco de dados.
  • DB_PORT: o número da porta do banco de dados do status do cluster de banco de dados.
  • DB_USERNAME: com o nome de usuário do banco de dados (o padrão é dbsadmin).