Selon le message d'aide de brew services
, lorsque vous courez
brew services start mysql
il installe et démarre la formule de service à la connexion (ou au démarrage si vous exécutez la commande avec sudo
). Cela signifie que vous aurez maintenant un fichier plist dans ~/Library/LaunchAgents
(ou dans /Library/LaunchDaemons
si vous exécutez la commande avec sudo
). Pour mysql, le fichier plist est le suivant :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>homebrew.mxcl.mysql</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/mysql/bin/mysqld_safe</string>
<string>--bind-address=127.0.0.1</string>
<string>--datadir=/usr/local/var/mysql</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>WorkingDirectory</key>
<string>/usr/local/var/mysql</string>
</dict>
</plist>
cela signifie que par défaut mysqld_safe
est appelé avec le --bind-address=127.0.0.1
et --datadir=/usr/local/var/mysql
options de ligne de commande.
quand tu cours
mysql.server start
vous exécutez directement le script mysql situé dans /usr/local/bin/mysql.server
.
La principale différence est qu'avec les brew services
version, vous exécutez mysqld_safe
qui, selon son man
page :