

# Conectar a uma instância de banco de dados executando o mecanismo de banco de dados do PostgreSQL
<a name="USER_ConnectToPostgreSQLInstance"></a>

Depois que o Amazon RDS provisiona a sua instância de banco de dados, você pode usar qualquer aplicação cliente padrão SQL para se conectar à instância. Para que você possa se conectar à sua instância de banco de dados, ela precisa estar disponível e acessível. O que determina se você pode se conectar à instância de fora da VPC é a maneira como você criou a instância de banco de dados do Amazon RDS: 
+ Se você tiver criado sua instância de banco de dados como *pública*, dispositivos e instâncias do Amazon EC2 fora da VPC poderão se conectar ao seu banco de dados. 
+ Se você tiver criado sua instância de banco de dados como *privada*, somente instâncias e dispositivos do Amazon EC2 dentro da Amazon VPC poderão se conectar ao seu banco de dados. 

Para verificar se sua instância de banco de dados é pública ou privada, use o Console de gerenciamento da AWS para visualizar a guia **Connectivity & security** (Conectividade e segurança) para sua instância. Em **Security** (Segurança), você pode encontrar o valor “Publicly accessible” (Acessível ao público), com No (Não) para privado e Yes (Sim) para público. 

Para saber mais sobre diferentes configurações do Amazon RDS e da Amazon VPC e como elas afetam a acessibilidade, consulte [Cenários para acessar uma instância de banco de dados em uma VPC](USER_VPC.Scenarios.md). 

**Contents**
+ [Instalar o cliente psql](#install-psql)
+ [Localizar as informações de conexão para uma instância de banco de dados do RDS para PostgreSQL](#postgresql-endpoint)
+ [Usar pgAdmin para se conectar a uma instância de banco de dados RDS for PostgreSQL](USER_ConnectToPostgreSQLInstance.pgAdmin.md)
+ [Usar psql para se conectar à sua instância de banco de dados RDS for PostgreSQL](USER_ConnectToPostgreSQLInstance.psql.md)
+ [Conectar-se ao RDS para PostgreSQL com o driver JDBC da Amazon Web Services (AWS)](PostgreSQL.Connecting.JDBCDriver.md)
+ [Conectar-se ao RDS para PostgreSQL com o driver Python da Amazon Web Services (AWS)](PostgreSQL.Connecting.PythonDriver.md)
+ [Solucionar problemas de conexões com a sua instância RDS for PostgreSQL](USER_ConnectToPostgreSQLInstance.Troubleshooting.md)
  + [Erro – FATAL: o banco de dados {{nome}} não existe](USER_ConnectToPostgreSQLInstance.Troubleshooting.md#USER_ConnectToPostgreSQLInstance.Troubleshooting-DBname)
  + [Erro – Não foi possível conectar-se ao servidor: a conexão expirou por exceder o tempo limite.](USER_ConnectToPostgreSQLInstance.Troubleshooting.md#USER_ConnectToPostgreSQLInstance.Troubleshooting-timeout)
  + [Erros com regras de acesso a grupos de segurança](USER_ConnectToPostgreSQLInstance.Troubleshooting.md#USER_ConnectToPostgreSQLInstance.Troubleshooting-AccessRules)

## Instalar o cliente psql
<a name="install-psql"></a>

Para se conectar à sua instância de banco de dados por meio de uma instância do EC2, você pode instalar um cliente PostgreSQL na instância do EC2. Para instalar a versão mais recente do cliente psql no Amazon Linux 2023, execute o seguinte comando: 

```
sudo dnf install postgresql{{<version number>}}
```

Para instalar a versão mais recente do cliente psql no Amazon Linux 2, execute o seguinte comando:

```
sudo yum install -y postgresql
```

Para instalar a versão mais recente do cliente psql no Ubuntu, execute o seguinte comando:

```
sudo apt install -y postgresql-client
```

## Localizar as informações de conexão para uma instância de banco de dados do RDS para PostgreSQL
<a name="postgresql-endpoint"></a>

Se a instância de banco de dados estiver disponível e acessível, você poderá se conectar fornecendo as seguintes informações à aplicação cliente SQL: 
+ O endpoint da instância de banco de dados, que serve como o nome do host (nome DNS) da instância.
+ A porta na qual a instância de banco de dados está ouvindo. Para o PostgreSQL, a porta padrão é 5432. 
+ O nome e senha do usuário da instância de banco de dados. O "nome de usuário primário" padrão do PostgreSQL é `postgres`. 
+ O nome e a senha do banco de dados (nome do banco de dados). 

 Você pode obter esses detalhes usando o comando Console de gerenciamento da AWS, o comando [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) da AWS CLI ou a operação [DescribeDBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html) da API do Amazon RDS. 

**Para localizar o endpoint, o número da porta e o nome do banco de dados utilizando o Console de gerenciamento da AWS**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon RDS em [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Abra o console do RDS e escolha **Databases (Bancos de dados)** para exibir uma lista das instâncias de banco de dados. 

1. Escolha o nome da instância de banco de dados do PostgreSQL para exibir os detalhes. 

1. Na guia **Connectivity & security (Conectividade e segurança)**, copie o endpoint. Além disso, anote o número da porta. Você precisará do endpoint e do número da porta para conectar-se à instância de banco de dados.   
![Obter o endpoint do Console do RDS](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/UserGuide/images/PostgreSQL-endpoint.png)

1. Na guia **Configuration** (Configuração), anote o nome do banco de dados. Se você tiver criado um banco de dados quando criou a instância do RDS for PostgreSQL, verá o nome listado abaixo do nome do banco de dados. Se você não tiver criado um banco de dados, o nome do banco de dados exibirá um traço (‐).  
![Obter o nome do banco de dados no Console do RDS](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/UserGuide/images/PostgreSQL-db-name.png)

A seguir, veja dois jeitos de se conectar a uma instância de banco de dados PostgreSQL. O primeiro exemplo usa o pgAdmin, uma popular ferramenta de administração e desenvolvimento de código aberto para o PostgreSQL. O segundo exemplo usa psql, um utilitário de linha de comando que faz parte de uma instalação do PostgreSQL. 