¡ERROR! ¡El file PID del server MySQL no pudo ser encontrado!

He reinstalado macOS Sierra en mi máquina. Después de instalar Oracle MySQL Community Server 5.7.15 (mysql-5.7.15-osx10.11) traté de detener el server MySQL desde la console. Volví el siguiente error "ERROR! ¡No se encontró el file PID del server MySQL!".

He hecho algunas investigaciones por mi count, pero no logró encontrar una solución a mi problema.

¿Alguna sugerencia?

  • Un "instalador" sospechoso se ejecutó en mi macbook. ¿Cuál sería el curso de acción más seguro?
  • Macbook Pro (2010, OSX Sierra) ha comenzado a pedirme que ingrese la contraseña para DHCP una y otra y otra vez
  • Conecte 2 monitores LG Ultrafine 5K enchufados en el mismo lado de finales de 2016 MacBook Pro 15 pulgadas
  • Biblioteca única de aplicaciones de fotos con Sierra y High Sierra
  • Desencryption Llavero de inicio de session encryption con tarjeta inteligente
  • Desconectar con fuerza la unidad de GPS del kernel
  • ¿Cómo forzar a Spotlight a importar el índice existente en lugar de rebuildlo (compartir en networking)?
  • MacBook Pro 13 "TouchBar 2017 no dormirá
  • One Solution collect form web for “¡ERROR! ¡El file PID del server MySQL no pudo ser encontrado!”

    Iniciar y detener el server MySQL a través del Panel de preferences / launchd y, por otro lado, a través de sudo /usr/local/mysql/support-files/mysql.server start/stop no son realmente compatibles.

    Después de elegir "Soporte inicializado" en el instalador de MySQL, se creará el demonio de lanzamiento com.oracle.oss.mysql.mysqld y el panel de preferences de MySQL usa el mecanismo de inicio para iniciar y detener mysql. Si habilita "Iniciar automáticamente el server MySQL al iniciar", mysqld se activa automáticamente después de iniciar su Mac.

    El nombre del file pid creado por el daemon de inicio no es compatible con el creado y esperado por el script mysql-server.

    El nombre del file pid del daemon de lanzamiento creado durante la ejecución es mysql.local.pid ; sin embargo , el script espera un nombre basado en el nombre de host de su Mac, .local o nombre de la computadora.

    Entonces, utilice MySQL pref panel / launchctl o la secuencia de commands para iniciar y detener mysqld.


    Hasta cierto punto, puede hacer ambos methods compatibles modificando el file com.oracle.oss.mysql.mysqld aunque:

    Después de detener mysql, reemplace la matriz

     <array> <string>/usr/local/mysql/bin/mysqld</string> <string>--user=_mysql</string> <string>--basedir=/usr/local/mysql</string> <string>--datadir=/usr/local/mysql/data</string> <string>--plugin-dir=/usr/local/mysql/lib/plugin</string> <string>--log-error=/usr/local/mysql/data/mysql.local.err</string> <string>--pid-file=/usr/local/mysql/data/mysql.local.pid</string> </array> 

    por

     <array> <string>/usr/local/mysql/bin/mysqld</string> <string>--user=_mysql</string> <string>--basedir=/usr/local/mysql</string> <string>--datadir=/usr/local/mysql/data</string> <string>--plugin-dir=/usr/local/mysql/lib/plugin</string> <string>--log-error=/usr/local/mysql/data/$name.err</string> <string>--pid-file=/usr/local/mysql/data/$name.pid</string> </array> 

    con $ nombre: ya sea HostName (ej. host.example.com), LocalHostName (ej. host.local) o ComputerName (ej. host). Probablemente lo mejor es usar un nombre de host. Puede get un nombre de host con nombre de host con scutil --get HostName o configurarlo con sudo scutil --set HostName your_hostname .

    También puede get el nombre de pid de la secuencia de commands mysql-server realmente utilizada, después de detener el demonio de inicio e iniciar mysqld con mysql-server start , verificando el directory de datos de mysql con sudo ls /usr/local/mysql/data . Use el nombre que se encuentra allí para ajustar el nombre de pid del plist.

    Puede que tenga que convertir el file demonio de lanzamiento en xml para editarlo. La aplicación TextWrangler lo abre como un file xml inmediatamente.

    Recargue el plist con launchctl luego.


    Ahora debería poder comenzar y detenerse con el panel de MySQL pref y el script mysql.server.

    Si habilitó "Iniciar automáticamente el server MySQL al iniciar", no puede detener el server, incluso después de modificar el plist, con el script porque launchd anula cualquier command de detención después de unos segundos y vuelve a iniciar mysqld.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).