Após criar e configurar uma instância ApsaraDB for RDS for MySQL, você pode estabelecer a conexão com ela. Este tópico descreve como se conectar à instância por meio de uma rede interna ou da internet utilizando a interface de linha de comando (CLI) ou um cliente, além de apresentar soluções para erros comuns de conexão.
Pré-requisitos
Uma ApsaraDB for RDS for MySQL instance is created, and a database and database account are created para a instância.
Uma IP address whitelist is configured para a instância.
Recomendações
-
Para obter menor latência e maior estabilidade, conecte-se à sua instância RDS a partir de uma instância ECS pela rede interna. As seguintes condições devem ser atendidas para uma conexão de rede interna:
A instância ECS e a instância RDS devem pertencer à mesma conta Alibaba Cloud, região e Virtual Private Cloud (VPC). O endereço IP privado da instância ECS deve estar na added to the IP address whitelist of the RDS instance.
NotaVisualize o endereço IP privado da sua instância ECS na página Instances.
Na coluna IP Address da lista de instâncias, um endereço IP público é marcado com "(Public)" e um endereço IP privado é marcado com "(Private)".
-
Para conexões via rede pública, utilize o endpoint do banco de dados.
NotaExecute
curl ipinfo.io/ip(recomendado) oucurl ifconfig.mepara consultar o endereço IP público do cliente local.O endereço IP público da instância RDS pode mudar durante uma atualização ou migração do banco de dados. Caso tenha adicionado seu IP local à lista de permissões mas ainda não consiga se conectar, consulte a provided solution.
Procedimento
Conectar via CLI
Este exemplo demonstra como se conectar a uma instância ApsaraDB for RDS for MySQL em um sistema Linux. Primeiro, instale o MySQL:
No CentOS, execute
sudo yum install mysql.No Ubuntu, execute
sudo apt-get updatee, em seguida, executesudo apt install mysql-server.
-
Faça login no servidor que será usado para conectar-se à instância RDS, como uma instância ECS ou um servidor local.
NotaPara obter instruções sobre como fazer login em uma instância ECS, consulte a seção Connect to an ECS instance em ECS Quick Start.
-
Execute o seguinte comando para estabelecer a conexão:
NotaInsira a senha após executar o comando.
A letra maiúscula P especifica a porta, enquanto a letra minúscula p indica o prompt de senha.
-
Endpoint e porta: correspondem ao endpoint e à porta da instância RDS.
Cenário
Endpoint necessário
Como obter
Você atende às condições para conexão via rede interna.
Endpoint interno
Faça login no console do ApsaraDB RDS e acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique no ID da instância.
Clique em View Details para visualizar o endereço e o número da porta da instância RDS. Na seção Basic Information, ao lado de Network Type, clique em View Connection Details.
NotaO endpoint público é exibido somente após você clicar em Apply for Public Endpoint.
Para uma instância RDS Cluster Edition, modifique o endpoint do nó primário na seção Cluster Read/Write Connection e o endpoint do nó secundário na seção Cluster Read-only Connection.
Você está se conectando a partir de uma instância ECS, mas não atende às condições para conexão via rede interna.
Endpoint público
Você está se conectando a partir de um dispositivo local.
Nome de usuário e senha: obtenha essas informações na página Accounts da instância RDS.
root@xxx -> mysql -hrxxx.mysql.rds.aliyuncs.com -P3306 -uxxx -p Enter password:Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 51325 Server version: 8.0.18 Source distribution
Conectar via MySQL Workbench
Outros clientes MySQL de uso geral também permitem a conexão com uma instância ApsaraDB for RDS for MySQL. Esta seção utiliza o MySQL Workbench 8.0.29 como exemplo. O procedimento é semelhante para outros clientes.
Abra o MySQL Workbench e escolha .
-
Insira as informações de conexão e clique em OK.
Na lista suspensa Connection Method, selecione Standard (TCP/IP).
-
Hostname e Port: correspondem ao endpoint e à porta da instância RDS.
Cenário
Endpoint necessário
Como obter
Você atende às condições para conexão via rede interna.
Endpoint interno
Faça login no console do ApsaraDB RDS e acesse a página Instances. Na barra de navegação superior, selecione a região onde a instância RDS está localizada. Em seguida, localize a instância RDS e clique no ID da instância.
Clique em View Details para visualizar o endereço e o número da porta da instância RDS. Na seção Basic Information, ao lado de Network Type, clique em View Connection Details.
NotaO endpoint público é exibido somente após você clicar em Apply for Public Endpoint.
Para uma instância RDS Cluster Edition, modifique o endpoint do nó primário na seção Cluster Read/Write Connection e o endpoint do nó secundário na seção Cluster Read-only Connection.
Você está se conectando a partir de uma instância ECS, mas não atende às condições para conexão via rede interna.
Endpoint público
Você está se conectando a partir de um dispositivo local.
Username e Password: obtenha essas informações na página Accounts da instância RDS.
-
Conectar via Navicat
Inicie o cliente Navicat.
-
No canto superior esquerdo, clique em Connection e selecione o tipo de banco de dados.
NotaSe você usar uma versão anterior do Navicat e o menu Alibaba Cloud não estiver disponível, selecione diretamente um tipo de banco de dados, como MySQL ou PostgreSQL.
Na barra de ferramentas do Navicat, clique em Connection, selecione Alibaba Cloud no menu suspenso e, em seguida, escolha o tipo de banco de dados desejado no submenu, como Alibaba Cloud ApsaraDB for RDS (MySQL)..., Alibaba Cloud ApsaraDB for RDS (PostgreSQL)... ou Alibaba Cloud ApsaraDB for RDS (SQL Server)....
-
Insira as informações de conexão da instância RDS. A tabela a seguir descreve os parâmetros.
Parâmetro
Descrição
Connection Name
Um nome personalizado para a conexão.
Host
O internal endpoint or public endpoint da instância RDS.
Utilize o endpoint interno se o seu cliente estiver em uma instância ECS na mesma conta, região e VPC da instância RDS.
Nos demais casos, utilize o endpoint público.
Port
A internal port or public port da instância RDS. Por exemplo, a porta padrão para MySQL é 3306.
User Name
O nome de usuário da conta que acessa a instância RDS. Encontre essa informação na página Accounts da instância.
Password
A senha correspondente ao nome de usuário especificado.
-
Clique em OK.
NotaSe a enhanced whitelist mode estiver ativada e você desejar se conectar à instância pela internet, adicione o endereço IP público do seu cliente ao classic network group.
Após conectar-se com sucesso usando um cliente como o Navicat, se você visualizar bancos de dados como
busudab,information_schemaemysqlna árvore de conexões, a conexão foi estabelecida corretamente.
Conectar-se a partir do ECS entre regiões ou contas
Conexão via rede pública (Internet): utilize o endpoint público da instância RDS para se conectar entre regiões ou contas pela Internet. O tráfego de entrada e saída pela Internet para a instância RDS é gratuito.
-
Conexão via rede interna (rede privada): por padrão, não é possível conectar-se pela rede interna quando a instância ECS e a instância RDS residem em regiões ou contas diferentes, pois as VPCs são isoladas entre si. No entanto, utilize VPC peering ou Cloud Enterprise Network (CEN) para conectar duas VPCs, permitindo que a instância ECS acesse a instância RDS entre regiões ou contas.
VPC peering connection: suporta interconexão de VPCs entre regiões e contas com baixo custo, mas possui configuração relativamente complexa. Mais indicado para cenários simples que envolvem poucas VPCs interconectadas.
CEN: suporta interconexão de VPCs entre regiões e contas com configuração simplificada, porém a um custo relativamente mais alto. Recomendado para cenários complexos que envolvem múltiplas VPCs interconectadas.
Erros comuns de conexão
Perguntas frequentes
-
P: As instâncias ApsaraDB for RDS for MySQL suportam Elastic IP Addresses (EIPs)?
R: Não, esse recurso não é suportado atualmente.
-
P: Como resolvo uma falha de conexão Telnet do meu computador local para a instância RDS?
R: Se não conseguir se conectar à instância RDS via Telnet, verifique os seguintes itens:
Verifique se a porta de service do banco de dados na cloud está correta e aberta para a internet.
Confira as regras do grupo de segurança ou firewall do banco de dados na cloud para garantir que seu endereço IP local tenha permissão de conexão.
Certifique-se de que os parâmetros de conexão, como hostname e número da porta, estejam corretos.
Verifique as regras de firewall no seu dispositivo local para assegurar que a porta necessária pelo RDS não esteja bloqueada.
Se possível, tente se conectar ao banco de dados na cloud usando outras ferramentas, como a CLI
mysqlou uma ferramenta de gerenciamento de banco de dados, para descartar problemas específicos do Telnet.
-
P: Como outros usuários podem acessar meu banco de dados?
R: Siga estas etapas:
Create a standard account e conceda a ela permissões no banco de dados.
Configure an IP address whitelist. Se o outro usuário estiver utilizando uma instância ECS, adicione o endereço IP privado ou o ID do grupo de segurança da instância ECS. Se o usuário estiver usando um cliente MySQL local, adicione o endereço IP público do dispositivo host.
Compartilhe o endpoint público, o nome do banco de dados e as credenciais da conta com o usuário.
O usuário poderá então connect to the database by using the CLI.
Referências
Falhas de conexão: Troubleshoot connection failures
Um método de conexão mais prático: Log on to an RDS database by using Data Management Service (DMS)
-
Conectar-se a instâncias RDS que executam outros mecanismos de banco de dados: