He instalado con éxito el servidor MySQL (5.5.11) en mi MAC Snow Leopard. Puedo iniciar el servidor utilizando PreferencePane, utilizando la línea de comandos sudo /usr/local/mysql/bin/mysqld_safe
pero no puede utilizar el mismo comando dentro de AppleScript.
Este es el resultado de la ejecución de sudo /user/local/mysql/bin/mysql_safe
:
ngocminh@MBP[304]:~$ sudo /usr/local/mysql/bin/mysqld_safe
Password:
110428 09:52:03 mysqld_safe Logging to '/usr/local/mysql/data/MBP.local.err'.
110428 09:52:03 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
El servidor Apache2 puede iniciarse con el comando sudo apachetl start
entonces se podría implementar usando un AppleScript script como este:
do shell script "apachectl start" password "mypassword" user name "ngocminh" with administrator privileges
Sin embargo, no puedo hacer lo mismo para iniciar el servidor mysql
do shell script "/usr/local/mysql/bin/mysqld_safe" password "mypassword" user name "ngocminh" with administrator privileges
El resultado de apple script dice:
"110428 11:03:06 mysqld_safe Logging to '/usr/local/mysql/data/MBP.local.err'.
110428 11:03:06 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data
110428 11:03:06 mysqld_safe mysqld from pid file /usr/local/mysql/data/MBP.local.pid ended"
Entonces el servidor MySQL no puede iniciarse.
Podría alguien decir qué es lo que falla en mi script o me he perdido algo. Cualquier sugerencia será muy apreciada. ¡Gracias!
-- EDITAR 1 --
Intente ejecutar este script en su lugar
do shell script "apachectl start" password "mypassword" with administrator privileges do shell script "/usr/local/mysql/bin/mysqld_safe > /dev/null 2>&1 &" password "mypassword" with administrator privileges
No hay error reportado por AppleScript pero el servidor MySQL sigue sin cargarse según ps
comando
ngocminh@MBP[315]:mysql$ ps aux | grep mysql
root 5652 0.0 0.0 2435544 872 s000 T 9:51AM 0:00.04 /bin/sh /usr/local/mysql/bin/mysqld_safe
ngocminh 16127 0.0 0.0 2435120 528 s001 R+ 2:30PM 0:00.00 grep mysql
ngocminh@MBP[315]:mysql$ ps aux | grep http
ngocminh 16141 0.0 0.0 2425524 172 s001 U+ 2:30PM 0:00.00 grep http
ngocminh 16092 0.0 0.0 2452692 644 ?? S 2:29PM 0:00.00 /usr/sbin/httpd -D FOREGROUND
ngocminh 16088 0.0 0.2 2456532 8960 ?? S 2:29PM 0:00.07 /usr/sbin/httpd -D FOREGROUND
root 16035 0.0 0.2 2452692 9832 ?? Ss 2:29PM 0:00.43 /usr/sbin/httpd -D FOREGROUND
-- EDITAR 2-- ¡PROBLEMA RESUELTO!
He encontrado la manera de evitarlo. Sólo hay que crear un AppleScript con sudo
interior para el arranque del servidor mysql
do shell script "apachectl start" password "mypassword" with administrator privileges
do shell script "sudo /usr/local/mysql/bin/mysqld_safe > /dev/null 2>&1 &" password "mypassword" with administrator privileges