mysqlctl pour vous servir

Première publication : 2009-11-09
Tags : macosmysql

J’ai suivi les conseils de Dan Benjamin et sur mon Mac, j’ai installé (entre autres) MySQL depuis les sources et non pas depuis un paquet préparé par MySQL Sun Oracle.
La procédure est très simple, pas de soucis de ce côté là.

Par contre on se retrouve avec un serveur qui est géré par launchd. C’est parfait à beaucoup d’égard (je ne vais pas faire l’article de ce superbe “logiciel”, vous trouverez tout chez Apple et Wikipedia) sauf lorsqu’on veut démarrer/arrêter le serveur MySQL manuellement, comme après un changement de config…

Pour cela il faut lancer ceci via le terminal :

$ sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysqld.plist

Pour le démarrage, c’est bien sûr load à la place de unload

C’est pas si simple à mémoriser si on s’en sert très rarement, et c’est un peu casse-pieds si on s’(en sert souvent. Alors comme en plus je ne suis pas très fort en shell, je me suis dit que je pouvais écrire un petit script pour le faire à ma place.

Remarquez, j’aurai pu faire un alias dans mon environnement Bash, mais j’ai préféré partir sur le script autonome.

J’ai choisi le nom mysqlctl pour ressembler à divers commandes existantes, comme apachectl, et comme me l’a fait remarqué Colinux, ça n’est pas le nom d’un binaire/script “officiel” de MySQL, donc pas de risque de confusion.

Vous trouverez ce script (et le fichier de config de MySQL pour launchd) sur GitHub. Vous pouvez librement le télécharger et l’utiliser, mais aussi faire un fork et proposer des corrections et/ou améliorations.