Comment arrêter mysql de s'exécuter au démarrage?

55

Actuellement, mon serveur MySQL démarre à chaque démarrage du serveur. Pour plusieurs raisons, il s’agit d’un comportement indésirable. Existe-t-il un moyen de désactiver ce comportement?

Иван Бишевац
la source

Réponses:

6

Je peux penser à deux Guis. Dans Applications -> Centre de logiciels Ubuntu, recherchez "gestionnaire de démarrage". Après l'installation, vous le trouverez dans Système -> Administration -> BootUP-Manager. Un autre est Webmin. Webmin utilise votre navigateur. Après l'installation, pointez votre navigateur sur https: // localhost: 10000 / Recherchez des services et utilisez-le à partir de cet emplacement .

picorer
la source
2
Cette méthode n'a pas fonctionné pour moi le 16.04
Mostafa Ahangarha
76

Pour empêcher mysql de démarrer au démarrage:

  1. Ouvrez le terminal: Ctrl+ Alt+T

  2. Ouvrez le mysql.conffichier:nano /etc/init/mysql.conf

  3. Mettez en commentaire la start onligne vers le haut du fichier, le start onpeut être réparti sur deux lignes, alors commentez les deux. (commentaire ajouté #au début)

Si vous voulez démarrer manuellement mysql, utilisez la commande suivante:

service mysql start

Pris libéralement d' ici.

Kris Harper
la source
3
C'est une réponse très utile pour plus d'une initiation au démarrage.
maniat1k
1
J'ai essayé, j'ai /usr/sbin/mysqldet en /bin/sh /usr/bin/mysqld_safecours d' exécution. Commenté tout mais n'a pas aidé.
Emin Mastizada
OMI c'est la meilleure réponse.
simhumileco
dans Linux Mint 18.2 Cinnamon, j’ai supprimé /etc/init/mysql.conf sans aucune modification. Le serveur Mysql fonctionne toujours au démarrage. La solution @thebugfinder a fonctionné pour moi
flyingdrifter
anacron.conf et whoopsie.conf sont tout ce que je peux voir dans / etc / init @ maniat1k
Prabesh bhattarai
73

Depuis 15.04, vous pouvez simplement faire:

sudo systemctl disable mysql
thebugfinder
la source
4
En effet. Pour 15.04, c'est la réponse que vous cherchez.
CommandZ
Génial, j'ai finalement trouvé une solution pour ça! Les autres méthodes ne fonctionnent pas pour moi.
rneves
Je ne peux pas le redémarrer, comment démarrer mysql après la commande?
Renne
@ rneves avez-vous essayé enableou reenable?
thebugfinder
1
@thebugfinder J'ai essayé enable, je ne le sais pas reenable, mais je suis obligé de enableredémarrer l'ordinateur pour redémarrer mysql
rneves
8

Les choses ont un peu changé dans Ubuntu maintenant. Je pense à partir de la version 11. MySQL est géré par Upstart alors qu'Apache utilise toujours les scripts d' initialisation SysV traditionnels

Pour MySQL, vous pouvez utiliser la nouvelle fonctionnalité de remplacement d' Upstart pour modifier le comportement de départ:

sudo echo "manual" >> /etc/init/mysql.override

Pour plus d'informations, reportez-vous à la section " Désactivation du démarrage automatique d'un travail " dans le livre de recettes Upstart.

Comme Apache utilise toujours les scripts initiaux SysV traditionnels, vous pouvez utiliser

sudo update-rc.d -f apache2 remove

pour supprimer les liens /etc/rcX.dou, alternativement, utiliser

sudo update-rc.d apache2 disable

qui "désactive" le script en le changeant d'un script de démarrage à un script d'arrêt. Ceci est réversible par

sudo update-rc.d apache2 enable

La plupart de ces informations que j'ai obtenues à partir d'ici: https://askubuntu.com/a/40077/24678

Wavesailor
la source
Si vous voulez restaurer le servicesudo update-rc.d apache2 defaults
bentech
4

Dans Ubuntu 18.04, sudo systemctl disable mysqlempêcherez mysql-serverle démarrage automatique au démarrage.

Pour Linux, il y a 3 principaux systèmes d'initialisation: Systemd, Upstartet SysV. Bien que presque tous les systèmes Linux fonctionnent sous Systemd. Les deux autres systèmes init peuvent également coexister dans votre système.

Pour Systemd, utilisez la commande sudo systemctl disable mysql;
Pour Upstart, utilisez echo manual >> /etc/init/mysql.override;
Pour SysV, exécutez la commande suivantesudo update-rc.d mysql disable

Si vous souhaitez savoir quel système init s'exécute sur votre serveur, lisez cette réponse .

Yossarian42
la source
2

Ou, si vous êtes vraiment paresseux comme moi, vous pouvez simplement ouvrir une session Terminal puis taper:

sudo perl -pi.orig -e 's/start\s+on/#start\s+on/' /etc/init/mysql.conf && sudo perl -pi.orig -e 's/and\s+/#and/g' /etc/init/mysql.conf

Vous pouvez ensuite simplement lancer une commande de redémarrage, puis votre système démarrera sans que MySQL ne démarre.

Justin Andrusk
la source
1
Cette commande pourrait être améliorée. Il ajoute une +ligne comme celle-ci: #start+on blahblahblahmais ça marche!
Lucio
2

En réalité, il existe également une autre méthode pour y parvenir, via l'outil sysv-rc-conf.

Vous pouvez l'installer en tapant

sudo apt-get install sysv-rc-conf

Il vous permet de prendre le contrôle de tous les services disponibles, notamment de les exécuter / arrêter et de configurer le fonctionnement des services par niveau d'exécution.

Edit: vous devez exécuter cet outil en tant que root:

sudo sysv-rc-conf
Errikos
la source
0

Vous pouvez utiliser chkconfigun ensemble d'outils

$ chkconfig --level 345 mysqld off
Thoman
la source
2
S'il vous plaît élaborer votre réponse. Pourquoi pensez-vous que cela résout la question? Vous pouvez par exemple ajouter un lien vers un manuel à titre de référence.
Byte Commander