Dans une session SSH sur votre hébergement, le client mysql vous permet d'interroger vos bases de données en ligne de commande, et mysqldump d'en faire une copie. Cet article explique comment vous connecter, et quoi faire si le client renvoie l'erreur 2002 « Can't connect to local MySQL server through socket ».
Prérequis
Ce qu'il faut savoir avant de commencer
- Les paramètres de connexion sont ceux que la console Apanel affiche dans Bases de données → MySQL, au bloc Configuration de la base de données : Nom d'hôte
localhost et Numéro de port 3306.
- Avec
localhost (ou sans option -h), le client passe par le fichier de socket local du serveur. Avec -h 127.0.0.1, il passe par le réseau local (TCP) sur le port 3306. Les deux aboutissent au même serveur de bases de données.
- Les commandes
mysql et mysqldump sont installées dans votre environnement SSH.
Se connecter
-
Connectez-vous à votre hébergement en SSH.
-
Lancez le client en indiquant l'utilisateur et la base :
mysql -u nom_utilisateur -p nom_base
-
Saisissez le mot de passe de l'utilisateur quand il est demandé. L'option -p sans valeur fait demander le mot de passe : il n'apparaît ainsi ni à l'écran ni dans l'historique des commandes.
-
Tapez exit pour quitter le client.
Pour exporter une base dans un fichier, mysqldump prend les mêmes options :
mysqldump -u nom_utilisateur -p nom_base > sauvegarde.sql
En cas de problème
-
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '…' : le client cherche le socket à un chemin qui n'existe pas sur nos serveurs (par exemple /var/run/mysqld/mysql.sock). Ce chemin vient en général d'un réglage socket= dans un fichier ~/.my.cnf, d'une option -S ou --socket dans la commande, ou d'un script repris d'un autre serveur. Retirez ce réglage, ou forcez la connexion en TCP :
mysql -h 127.0.0.1 -P 3306 -u nom_utilisateur -p nom_base
-
ERROR 1045 (28000): … Access denied for user : le nom d'utilisateur ou le mot de passe est faux, ou l'utilisateur n'a pas accès à cette base. Vérifiez-les dans la console Apanel, à l'onglet des utilisateurs de la base (voir Créer une base de données MySQL et son utilisateur).
-
Vous préférez une interface graphique : phpMyAdmin, accessible depuis la console Apanel, permet les mêmes opérations sans SSH.
Pour aller plus loin