Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment se connecter à MySQL sur Amazon EC2 depuis Linux/Mac ?

Vous souhaiterez peut-être vous connecter à MySQL sur Amazon EC2 à partir d'un ordinateur portable Linux / Mac. Mais vous ne voudrez peut-être pas ouvrir de port sur l'instance EC2 pour des raisons de sécurité. Vous pouvez transférer votre port local via Secure Shell (SSH) à la place. Désormais, lorsque vous vous connectez à votre port local, il est transféré pour se connecter au serveur MySQL sur Amazon EC2 via SSH à la place. Pas besoin d'ouvrir le port de votre serveur MySQL sur l'instance EC2. Puisqu'il est sur SSH, personne ne peut le suivre non plus. Voici comment vous pouvez vous connecter à MySQL sur Amazon EC2 à partir de Linux/Mac en utilisant le tunnel SSH.

Si vous n'êtes pas familier avec le tunnel SSH, vous pouvez en savoir plus sur la connexion à l'instance Amazon EC2 à partir de Linux/Mac à l'aide de SSH.

C'est vraiment facile. Ouvrez simplement le shell/terminal et tapez une commande avec la syntaxe

[sudo] ssh -i "$key" -f -N -L $local_port:127.0.0.1:$remote_port $user@$ec2

Ce que cela signifie :

$key – emplacement de votre fichier de clé privée (.pem) téléchargé depuis Amazon lors de la création de l'instance EC2

$local_port – port sur votre machine locale que vous transférez au serveur MySQL sur EC2. C'est le port qui écoute les demandes de connexion

$remote_port – port sur lequel le serveur MySQL s'exécute sur EC2. Il s'agit généralement de 3306

$user

  • Pour une AMI Amazon Linux, le nom d'utilisateur est ec2-user .
  • Pour une AMI RHEL, le nom d'utilisateur est souvent root mais peut-être ec2-user .
  • Pour une AMI Ubuntu, le nom d'utilisateur est ubuntu .
  • Sinon, consultez votre fournisseur d'AMI.

$ec2 – IP publique ou nom DNS public de l'instance EC2

Ex :

sudo ssh -i "/tmp/private_key.pem" -f -N -L 3100:127.0.0.1:3306 [email protected]

Cela transférera le port 3100 de votre ordinateur portable vers le port 3306 sur 192.150.15.1. Ainsi, lorsque vous essayez de vous connecter au port 3100 de votre ordinateur portable, il sera envoyé à 192.150.15.1. Après avoir atteint l'instance EC2, il est envoyé à 127.0.0.1:3306. Dans ce cas, 127.0.0.1 fait référence à 192.150.15.1 et non à votre ordinateur local. Cela exécutera la session ssh en arrière-plan. Il doit être exécuté chaque fois que vous essayez de vous connecter à la base de données MySQL.

Se connecter à MySQL sur Amazon EC2 depuis Linux/Mac

Voici à titre de référence un exemple de connexion utilisant MySQL Adminstrator vers localhost :notez l'adresse de l'hôte du serveur 127.0.0.1 qui sera transmise de manière transparente.

Vous pouvez également ouvrir un shell/terminal et taper (par exemple, le mot de passe est 'passwd')

mysql -h 127.0.0.1 --port 3100 -uroot -ppasswd

Cela signifie se connecter au port 3100 sur votre hôte local. Cela transmet la connexion au serveur MySQL de l'instance EC2 qui écoute sur le port 3306.