260 votes

Comment démarrer/arrêter le serveur mysql ?

J'ai essayé de trouver des articles décrivant comment démarrer et arrêter correctement un serveur mysql.

J'ai trouvé ce lien : Comment démarrer/arrêter le serveur MySql sur Ubuntu 8.04 | Le monde du blog d'Abhi

J'ai lancé cette commande :

/etc/init.d/mysql start 

mais je vois cette erreur

ERROR 1045 (28000) Access denied for user....

Après avoir essayé cette commande :

sudo /etc/init.d/mysql start

J'ai entré mon mot de passe, et je vois à nouveau la même erreur.

Commande suivante :

sudo /etc/init.d/mysql - root -p start

résulte dans :

ERROR 1049 (42000) Unknown database 'start'.

Et quand je lance cette commande :

sudo service mysql start

Le serveur MySQL a démarré avec succès. Cool !

Alors, quel est le problème avec les autres commandes ? Pourquoi entraînent-ils des erreurs ?

287voto

pele Points 9

Vos deux premières commandes n'ont pas été exécutées en tant que root, c'est donc un comportement attendu. Vous devez être root pour arrêter/démarrer mysql.

Cependant :

sudo /etc/init.d/mysql start

devrait fonctionner. En effet, c'est le cas, pour moi :

kojan:~> sudo /etc/init.d/mysql restart
[sudo] password for chris: 
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..

J'ai utilisé redémarrer plutôt que démarrer, puisqu'il était déjà en cours d'exécution, mais l'effet est le même. Êtes-vous sûr d'avoir entré votre mot de passe correctement ? :) Avez-vous modifié votre configuration sudo qui pourrait empêcher ce fonctionnement ?

Celui-là

sudo /etc/init.d/mysql - root -p start

Les arguments sont faux. Un init.d script prend seulement start o stop o restart - juste un mot lui disant quoi faire. Vous ne pouvez pas lui donner de multiples arguments comme vous essayiez de le faire.

Quoi qu'il en soit, la réponse courte est celle que vous avez réussi à faire fonctionner, c'est la méthode recommandée. service remplace tous les scripts de init.d au fil du temps, donc vous devriez prendre l'habitude d'utiliser service . La page vers laquelle vous vous dirigez a été écrite en 2008, elle est donc à prendre avec des pincettes :)

110voto

Bossn13 Points 1

Il est également utile de vérifier que "mysql" est le nom de service correct. Dans mon cas, ce n'était pas le cas. J'ai obtenu la réponse suivante : mysql : service non reconnu lors de l'exécution.

service mysql status 

Ensuite j'ai vérifié /etc/init.d et j'ai trouvé script nommé mysqld qui listait le nom du processus : mysqld et prog=mysqld

Alors, j'ai fait

service mysqld status
service mysqld stop
service mysqld start 

et ils ont tous bien fonctionné.

36voto

Lucio Points 17760

Pour Ubuntu 12.10 à 14.04 ( Upstart )

Les versions plus récentes d'Ubuntu utilisent systemd .

DÉMARRER MYSQL :

sudo start mysql

REDÉMARREZ MYSQL :

sudo restart mysql # The service must be running

STOP MYSQL :

sudo stop mysql # The service must be running

13voto

Akash5288 Points 231

J'ai obtenu une erreur étrange lorsque j'ai installé mysql-workbench sur ma machine Ubuntu. Après cela, j'ai essayé de démarrer le service mysql en utilisant cette commande :

service mysql start

Cela a montré que le serveur MySQL n'était pas installé, je l'ai donc installé et mon problème était résolu. La commande pour installer mysql-server est la suivante :

sudo apt-get install mysql-server

Après une installation réussie, démarrez le serveur MySQL :

service mysql start

11voto

Faisal Julaidan Points 211

J'ai eu le même problème avec Ubuntu64 et je l'ai résolu en n'utilisant simplement pas systemctl mais plutôt ceci :

sudo service mysql restart

Avec un peu de chance, cette commande fonctionnera pour vous.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X