La mejor manera de hacerlo es crear un launchd
.plist, copiarlo en ~/Library/LaunchAgents
y dejar que el sistema lo maneje por usted.
Muestra .plist:
<?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>Label</key>
<string>com.user.startMySQL</string>
<key>ProgramArguments</key>
<array>
<string>mysql.server</string>
<string>start</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Prefiero usar la convención de nombres de archivos com.user.<name of function>.plist
al nombrarlos para poder identificar fácilmente qué está cargado y qué no.
A continuación, debes cargar este .plist como root
para que se ejecute como root
$ sudo launchctl load com.user.startMySQL.plist
Para verificar que se ha cargado, puede emitir el comando sudo launchctl list
y el comando mysql
para iniciar una conexión con el servicio MySQL.
Tenga en cuenta que esto es solo un ejemplo simple: es posible que desee crear una secuencia de comandos para verificar si mysqld
ya se está ejecutando antes de iniciarlo.