300 votes

Accès à la base de données distante mysql à partir de la ligne de commande

J'ai un serveur chez Rackspace. Je veux accéder à la base de données depuis la ligne de commande de ma machine locale.

J'ai essayé :

mysql -u username -h my.application.com -ppassword

Mais cela donne une erreur :

ERREUR 2003 (HY000) :

Impossible de se connecter au serveur MySQL sur 'my.application.com' (10061)

Quelle est la cause de cette erreur et comment puis-je me connecter à la base de données distante ?

4voto

zoro juro Points 36

Vous pouvez utiliser le code suivant pour vous connecter à une base de données MY SQL distante

mysql -u {database_user} -p{db_password} -h {host_name} -P {port_number}
mysql -u admin -p'your_password' -h your-company.aws.com -P 3306

2voto

AmirolAhmad Points 122

Doit vérifier si l'accès entrant au port 3306 est bloqué ou non par le pare-feu.

1voto

violentr Points 301

Cette solution a fonctionné pour moi :

Sur votre machine distante (exemple : 295.13.12.53) a accès à votre machine distante cible (qui exécute le serveur mysql)

ssh -f -L 295.13.12.53:3306:10.18.81.36:3306 user@295.13.12.53

Expliqué :

ssh -f -L your_ssh_mashine_ipaddress:your_ssh_mashine_local_port:target_ipaddress:target_port user@your_ip_address -N

your_ssh_mashine_ipaddress - ce n'est pas l'adresse ip locale, c'est l'adresse ip vers laquelle vous vous connectez en ssh, dans cet exemple 295.13.12.53

votre_ssh_mashine_local_port -ceci est le port personnalisé et non 22, dans cet exemple c'est 3306.

target_ipaddress - ip de la machine que vous essayez de vider DB.

target_port - 3306 c'est le port réel du serveur MySQL.

user@votre_adresse_ip - il s'agit des informations d'identification ssh de la machine ssh à laquelle vous vous connectez.

Une fois tout cela fait, retournez sur votre machine et faites ceci :

mysqldump -h 295.13.12.53 -P 3306 -u username -p db_name > dumped_db.sql

Il vous demandera un mot de passe, mettez votre mot de passe et vous êtes connecté. J'espère que cela vous aidera.

1voto

ravi teja Points 1

Essayez ça, ça marche :

mysql -h {nom_hôte} -u{nom_utilisateur} -p{mot_de_passe} -N -e "{interrogation à exécuter}"

1voto

levis Points 392

Celui-ci a fonctionné pour moi dans mysql 8, remplacer hostname avec votre nom d'hôte et port_number avec votre numéro de port, vous pouvez aussi changer votre mysql_user s'il n'est pas Root

      mysql --host=host_name --port=port_number -u root -p

Plus d'informations ici

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X