Conexão a uma instância de banco de dados executando o mecanismo de banco de dados do MySQL - Amazon Relational Database Service

Conexão a uma instância de banco de dados executando o mecanismo de banco de dados do MySQL

Antes de poder se conectar a uma instância de banco de dados executando o mecanismo de banco de dados do MySQL, você deve criar uma instância de banco de dados. Para ter mais informações, consulte Criar uma instância de banco de dados do Amazon RDS. Depois que o Amazon RDS provisionar a sua instância de banco de dados, será possível usar qualquer aplicativo ou utilitário cliente MySQL padrão para se conectar à instância. Na string de conexão, você especifica o endereço DNS do endpoint da instância de banco de dados como o parâmetro de host e especifica o número da porta a partir desse endpoint como o parâmetro de porta.

Para autenticar-se na instância de banco de dados do RDS, você pode usar um dos métodos para autenticação do MySQL e a autenticação de banco de dados do AWS Identity and Access Management (IAM):

Você pode se conectar a uma instância de banco de dados MySQL com ferramentas como o cliente MySQL de linha de comando do . Para ter mais informações sobre como usar o cliente MySQL de linha de comando, acesse mysql - the MySQL command-line client na documentação do MySQL. O MySQL Workbench é um aplicativo baseado em GUI que você pode usar para se conectar. Para ter mais informações, consulte a página Download MySQL Workbench. Para obter informações sobre como instalar o MySQL (incluindo o cliente MySQL de linha de comando), consulte Installing and upgrading MySQL (Instalar e atualizar o MySQL).

Para se conectar a uma instância de banco de dados de fora de sua Amazon VPC, a instância de banco de dados deve ser acessível ao público geral, o acesso deve ser concedido usando as regras de entrada do grupo de segurança da instância de banco de dados e outros requisitos devem ser atendidos. Para ter mais informações, consulte Não é possível conectar-se à instância de banco de dados do Amazon RDS.

Você pode usar a criptografia Secure Sockets Layer (SSL) ou Transport Layer Security (TLS) em conexões com uma instância de banco de dados do MySQL. Para ter mais informações, consulte Usar o SSL/TLS com uma instância de banco de dados do MySQL. Se você estiver usando a autenticação de banco de dados do AWS Identity and Access Management (IAM), use uma conexão SSL/TLS. Para ter mais informações, consulte Autenticação do banco de dados do IAM para MariaDB, MySQL e PostgreSQL.

Também é possível se conectar a uma instância de banco de dados a partir de um servidor web. Para ter mais informações, consulte Tutorial: crie um servidor Web e uma instância de banco de dados do Amazon RDS.

nota

Para obter informações sobre a conexão a uma instância de banco de dados MariaDB, consulte Conectar-se a uma instância de banco de dados executando o mecanismo de banco de dados MariaDB.

Localizar as informações de conexão para uma instância de banco de dados do RDS para MySQL

As informações de conexão de uma instância de banco de dados incluem seu endpoint, porta e um usuário de banco de dados válido, como o usuário mestre. Por exemplo, suponha que um valor de endpoint seja mydb.123456789012.us-east-1.rds.amazonaws.com. Nesse caso, o valor da porta é 3306, e o usuário do banco de dados é admin. Com essas informações, você especifica os seguintes valores em uma string de conexão:

  • Para o host, nome de host ou nome DNS, especifique mydb.123456789012.us-east-1.rds.amazonaws.com.

  • Para a porta, especifique 3306.

  • Para usuário, especifique admin.

Para se conectar a uma instância de banco de dados, use qualquer cliente para um mecanismo de banco de dados do MySQL. Por exemplo, você pode usar o cliente MySQL de linha de comando ou o MySQL Workbench.

Para localizar as informações de conexão de uma instância de banco de dados, você pode usar o AWS Management Console, comando da AWS CLI describe-db-instances ou a operação da API do Amazon RDS DescribeDBInstances para listar seus detalhes.

Para encontrar as informações de conexão de uma instância de banco de dados no AWS Management Console
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No painel de navegação, escolha Bancos de dados para exibir uma lista de suas instâncias de banco de dados.

  3. Escolha o nome da instância de banco de dados MySQL para exibir os detalhes.

  4. 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.

    O endpoint e a porta de uma instância de banco de dados
  5. Se você precisar encontrar o nome de usuário mestre, escolha a guia Configuração e visualize o valor do nome de usuário mestre .

Para localizar as informações de conexão de uma instância de banco de dados MySQL usando o AWS CLI, chame o comando describe-db-instances . Na chamada, consulte o ID da instância de banco de dados, o endpoint, a porta e o nome de usuário mestre.

Para Linux, macOS ou Unix:

aws rds describe-db-instances \ --filters "Name=engine,Values=mysql" \ --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Para Windows:

aws rds describe-db-instances ^ --filters "Name=engine,Values=mysql" ^ --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"

Sua saída deve ser similar à seguinte.

[ [ "mydb1", "mydb1.123456789012.us-east-1.rds.amazonaws.com", 3306, "admin" ], [ "mydb2", "mydb2.123456789012.us-east-1.rds.amazonaws.com", 3306, "admin" ] ]

Para localizar as informações de conexão de uma instância de banco de dados usando a Amazon RDS API, chame a operação DescribeDBInstances . Na saída, encontre os valores para o endereço do endpoint, a porta do endpoint e o nome do usuário mestre.

Instalar o cliente de linha de comando do MySQL

A maioria das distribuições do Linux inclui o cliente MariaDB em vez do cliente Oracle MySQL. Para instalar o cliente da linha de comando do MySQL no Amazon Linux 2023, execute o seguinte comando:

sudo dnf install mariadb105

Para instalar o cliente da linha de comando do MySQL no Amazon Linux 2, execute o seguinte comando:

sudo yum install mariadb

Para instalar o cliente MySQL de linha de comando na maioria das distribuições do Linux baseadas em DEB, execute o seguinte comando:

apt-get install mariadb-client

Para verificar a versão do cliente MySQL de linha de comando, execute o seguinte comando:

mysql --version

Para ler a documentação da versão atual do cliente MySQL, execute o seguinte comando:

man mysql

Conectar o cliente MySQL de linha de comando (não criptografado)

Importante

Use uma conexão MySQL não criptografada apenas quando o cliente e o servidor estiverem na mesma VPC e a rede for confiável. Para obter informações sobre como usar conexões criptografadas, consulte Conectar-se a partir do cliente de linha de comando do MySQL com SSL/TLS (criptografado).

Para se conectar a uma instância de banco de dados usando o cliente de linha de comando MySQL, insira o comando a seguir no prompt de comando. Para o parâmetro -h, substitua o nome do DNS (endpoint) da instância de banco de dados. Para o parâmetro -P, substitua a porta para sua instância de banco de dados. Para o parâmetro -u, substitua o nome de usuário de um usuário de banco de dados válido, como o usuário mestre. Digite a senha do usuário mestre quando lhe for solicitado.

mysql -h mysql–instance1.123456789012.us-east-1.rds.amazonaws.com -P 3306 -u mymasteruser -p

Depois de inserir a senha do usuário, você deverá ver uma saída semelhante à seguinte.

Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9738 Server version: 8.0.28 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>

Conexão pelo MySQL Workbench

Para se conectar pelo MySQL Workbench
  1. Faça download do MySQL Workbench em Download do MySQL Workbench e instale-o em seguida.

  2. Abra o MySQL Workbench.

    MySQL Workbench
  3. Em Banco de dados, escolha Gerenciar conexões.

  4. Na janela Gerenciar conexões de servidor, escolha Novo.

  5. Na janela Conectar-se ao banco de dados, insira as seguintes informações:

    • Conexão armazenada – insira um nome para a conexão, como MyDB.

    • Nome do host – insira o endpoint da instância de banco de dados.

    • Porta – insira a porta usada pela instância de banco de dados.

    • Nome de usuário – insira o nome de usuário de um usuário de banco de dados válido, como o usuário mestre.

    • Senha – opcionalmente, escolha Armazenar no cofre e depois insira e salve a senha do usuário.

    A janela é semelhante à seguinte:

    Janela de conexão do MySQL Workbench

    É possível usar os recursos do MySQL Workbench para personalizar conexões. Por exemplo, é possível usar a guia SSL para configurar conexões SSL/TLS. Para obter informações sobre como usar o MySQL Workbench, consulte a Documentação do MySQL Workbench. Para criptografar conexões de clientes com instâncias de banco de dados do MySQL com SSL/TLS, consulte Criptografar conexões de clientes com instâncias de banco de dados do MySQL com SSL/TLS.

  6. Opcionalmente, escolha Testar conexão para confirmar se a conexão com a instância de banco de dados foi bem-sucedida.

  7. Escolha Fechar.

  8. Em Banco de dados, escolha Conectar-se ao banco de dados.

  9. Em Conexão armazenada, escolha sua conexão.

  10. Escolha OK.

Conectar-se ao RDS para MySQL com o driver JDBC da Amazon Web Services (AWS)

O driver JDBC da Amazon Web Services (AWS) foi projetado como um wrapper JDBC avançado. Esse wrapper é complementar e amplia a funcionalidade do driver JDBC existente. O driver é compatível de forma intercambiável com os drivers MySQL Connector/J e MariaDB Connector/J da comunidade.

Para instalar o driver JDBC da AWS, anexe o arquivo .jar do driver JDBC da AWS (localizado na aplicação CLASSPATH) e mantenha referências ao respectivo driver da comunidade. Atualize o respectivo prefixo do URL de conexão da seguinte forma:

  • jdbc:mysql:// para jdbc:aws-wrapper:mysql://

  • jdbc:mariadb:// para jdbc:aws-wrapper:mariadb://

Consulte mais informações sobre o driver JDBC da AWS e siga as instruções para usá-lo em Amazon Web Services (AWS) JDBC Driver GitHub repository.

Conectar-se ao RDS para MySQL com o driver Python da Amazon Web Services (AWS)

O driver Python da Amazon Web Services (AWS) foi projetado como um wrapper Python avançado. Esse wrapper é complementar e amplia a funcionalidade do driver Psycopg de código aberto. O driver Python da AWS é compatível com as versões 3.8 e posterior do Python. É possível instalar o pacote aws-advanced-python-wrapper usando o comando pip, bem como os pacotes de código aberto psycopg.

Para ter mais informações sobre o driver Python da AWS e instruções completas para usá-lo, consulte Amazon Web Services (AWS) Python Driver GitHub repository.

Solução de problemas de conexões com a instância de banco de dados MySQL

Duas causas comuns de falhas de conexão a uma nova instância de banco de dados são:

  • A instância de banco de dados foi criada usando um grupo de segurança que não autoriza conexões do dispositivo ou da instância do Amazon EC2 em que o aplicativo ou utilitário do MySQL está sendo executado. A instância de banco de dados deve ter um grupo de segurança de VPC que autorize as conexões. Para ter mais informações, consulte VPCs da Amazon VPC e Amazon RDS.

    É possível adicionar ou editar uma regra de entrada no grupo de segurança. Em Source (Origem), selecione My IP (Meu IP). Isso concede acesso à instância de banco de dados do endereço IP detectado no navegador.

  • A instância de banco de dados foi criada usando a porta padrão 3306 e sua empresa emprega regras de firewall bloqueando conexões a essa porta a partir de dispositivos na rede de sua empresa. Para corrigir essa falha, recrie a instância com uma porta diferente.

Para ter mais informações sobre problemas de conexão, consulte Não é possível conectar-se à instância de banco de dados do Amazon RDS.