cómo iniciar un servidor mysql al iniciar sesión

1

Actualmente uso Valet para desarrollar sitios, y muchos de esos sitios necesitan bases de datos SQL. Para alojar bases de datos SQL, ejecuto un servidor mariaDB desde la Terminal. Para iniciar el servidor MySQL y poder conectarme a las bases de datos, ejecuto el comando: %código% Quiero que el servidor se inicie al iniciar sesión, así que normalmente solo ejecutaría este comando al iniciar sesión, pero requiere el comando sudo. ¿Qué cambio y cómo lo cambio para no necesitar la parte sudo del comando y puedo iniciar el servidor al iniciar sesión?

    
pregunta brothman 13.01.2017 - 18:23

1 respuesta

2

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.

    
respondido por el Allan 13.01.2017 - 18:31

Lea otras preguntas en las etiquetas