121 votes

comment se connecter à mysql et interroger la base de données à partir d'un terminal linux

J'utilise debian linux. J'ai une machine linux sur laquelle mysql est installé. Je peux me connecter à ma machine linux en utilisant l'utilisateur Root ainsi que d'autres utilisateurs. Je peux me connecter à la base de données mysql sur la machine linux à partir de la machine Windows en utilisant sqlyog. Maintenant, je veux exécuter des requêtes sur la machine linux uniquement en utilisant le terminal linux.

J'ai essayé les choses suivantes sur le terminal

Je suis allé dans le répertoire racine, puis dans le répertoire /var/lib.

Je lance les commandes suivantes dans le terminal

mysqladmin -u root -p
mysqladmin -u root -ppassword

J'ai toujours obtenu le message d'erreur suivant

ERREUR 1045 (28000) Accès refusé pour l'utilisateur 'Root'@'localhost' (Utilisation du mot de passe NO)

Veuillez me guider pour les points suivants

  1. Comment obtenir l'invite mysql dans le terminal linux ?
  2. Comment arrêter le serveur mysql à partir d'un terminal linux ?
  3. Comment démarrer le serveur mysql à partir d'un terminal linux ?
  4. Comment obtenir l'invite mysql dans le terminal linux ?
  5. Comment se connecter au serveur mysql à partir d'un terminal linux ?
  6. Comment résoudre l'erreur suivante ?

ERREUR 1045 (28000) l'utilisateur 'Root'@'localhost' (Utilisation du mot de passe NO)

Veuillez me donner des solutions pour la question ci-dessus. Je vous remercie de votre attention.

200voto

Álvaro G. Vicario Points 57607

1 - Comment obtenir l'invite mysql dans le terminal linux ?

mysql -u root -p

A l'occasion de la Enter password: prompt, eh bien, entrez le mot de passe de Root :)

Vous pouvez trouver d'autres références en tapant mysql --help ou au manuel en ligne .

2. Comment arrêter le serveur mysql à partir d'un terminal linux ?

Cela dépend. Les distributions basées sur Red Hat disposent de l'option service commande :

service mysqld stop

D'autres distros nécessitent d'appeler directement le script d'init :

/etc/init.d/mysqld stop

3. Comment démarrer le serveur mysql à partir d'un terminal linux ?

Identique au point 2, mais avec start .

4. Comment obtenir l'invite mysql dans le terminal linux ?

Même chose qu'au point 1.

5. Comment se connecter au serveur mysql à partir d'un terminal linux ?

Même chose qu'au point 1.

6. Comment résoudre l'erreur suivante ?

Même chose qu'au point 1.

14voto

flindeberg Points 1878

Pour répondre à votre première question :

mysql -u root -p

ou

mysqladmin -u root -p "your_command"

en fonction de ce que vous voulez faire. Le mot de passe vous sera demandé une fois que vous aurez appuyé sur la touche Entrée ! Je suppose que vous voulez vraiment utiliser mysql et non mysqladmin .

Pour redémarrer ou arrêter le serveur MySQL sous Linux, cela dépend de votre installation, mais dans les dérivés courants de Debian, cela fonctionnera pour démarrer, arrêter et redémarrer le service :

sudo /etc/init.d/mysql start
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql restart
sudo /etc/init.d/mysql status

Dans certaines distributions plus récentes, cela peut également fonctionner si MySQL est configuré comme un deamon/service.

sudo service mysql start
sudo service mysql stop
sudo service mysql restart
sudo service mysql status

Mais il est impossible de répondre à cette question sans connaître votre configuration particulière.

7voto

stefgosselin Points 5880

Je suppose que vous cherchez à utiliser le client mysql, ce qui est une bonne chose et beaucoup plus efficace à utiliser que n'importe quelle alternative à phpMyAdmin.

La bonne façon de se connecter avec le client de ligne de commande est de taper :

mysql -u username -p

Remarquez que je n'ai pas tapé le mot de passe. Cela aurait rendu le mot de passe visible à l'écran, ce qui n'est pas bon dans un environnement multi-utilisateurs !

Après avoir tapé cela, appuyez sur la touche Entrée, mysql vous demandera votre mot de passe.

Une fois connecté, vous aurez bien sûr besoin de.. :

use databaseName;

de faire quoi que ce soit.

Bonne chance.

5voto

quarkonium Points 83

A l'invite de commande, essayez :

mysql -u root -p

donnez le mot de passe lorsqu'on vous le demande.

4voto

user789877 Points 41

J'ai eu exactement le même problème sur mon VPS ArchLinux aujourd'hui.

mysql -u root -p n'a pas fonctionné, alors que mysql -u root -pmypassword a fait.

Il s'est avéré que j'avais un fichier de périphérique /dev/tty cassé (probablement après une mise à jour de udev), donc mysql ne pouvait pas l'utiliser pour une connexion interactive.

J'ai fini par supprimer /dev/tty et le recréer avec mknod /dev/tty c 5 1 y chmod 666 /dev/tty . Cela a résolu le problème mysql et d'autres problèmes également.

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