Conecte-se ao banco de dados na instância de sub-rede privada via NAT com o MySQL Workbench
Crie um usuário do mysql que possa se conectar remotamente:
- por padrão, o usuário
root
não pode se conectar remotamente -
crie um usuário com permissão para se conectar a partir do seu endereço IP (ou use%, o que significa qualquer endereço)
- conecte-se à instância db na sub-rede privada via SSH
- faça o login no mysql como root e digite a senha quando solicitado:
mysql -h localhost -u root -p
- execute a seguinte consulta para criar um usuário
CREATE USER 'username'@'XX.XX.XX.XX' IDENTIFIED BY 'mypassword';
- verifique se o usuário que você adicionou tem todos os privilégios necessários:
GRANT ALL PRIVILEGES ON *.* TO 'username'@'IP' IDENTIFIED BY 'password';
-
verifique se os usuários que você está adicionando não são duplicados em um nome de usuário ou senha. - veja a tabela user no terminal com a seguinte consulta mysql:
select * from mysql.user\G;
- é uma boa ideia excluir o usuário anônimo das colisões de segurança e possíveis usuários: link -
quando a consulta de execução completa:
FLUSH PRIVILEGES;
Configure seus grupos de segurança para permitir a conexão remota do MySQL através da instância do NAT:
-
com o WorkBench, você está encapsulando o SSH até o NAT e, em seguida, conectando-se através da porta 3306 à instância do db
-
verifique se o IP do qual você está se conectando tem permissão para se conectar à porta 3306 no grupo de segurança da AWS - a instância NAT deve ter SSH (22) entrada do seu endereço IP
- a instância NAT deve ter o MySQL (3306)em direção ao intervalo de endereços VPC (por exemplo, 10.0.0.0/16)
- a instância db na sub-rede privada VPC deve permitir entrada MySQL (3306) do intervalo de IP privado da VPC (por exemplo, 10.0.0.0/16)
Configure o Workbench para se conectar à sua instância de db através da instância do NAT:
- abre o WorkBench
- crie uma nova conexão e dê um nome a ela (por exemplo, my_vpc_db1)
- escolha 'TCP / IP padrão sobre SSH' como método de conexão
- O host SSH é o IP público da entrada NAT, por ex. XX.XX.XX.XX
- Nome de usuário do SSH = ec2-user
- A senha do SSH está em branco (desmarque isso se necessário)
- SSH Key File = navegue até a localização do arquivo key_pair.pem
- MySQL Hostname = endereço IP privado da instância db no VPC
- Porta do Servidor MySQL = 3306
- username = o nome que você acabou de adicionar no comando CREATE USER
- password = acabou de ser adicionado em CREATE USER