Я успешно установил сервер MySQL (5.5.11) на свой MAC Snow Leopard. Я могу запустить сервер, используя Панель настроек, используя командную строку sudo /usr/local/mysql/bin/mysqld_safe
но не может использовать ту же команду в AppleScript.
Это выход из бега 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
Сервер Apache2 можно запустить с помощью команды sudo apachetl start
затем его можно реализовать с помощью сценария AppleScript, например:
do shell script "apachectl start" password "mypassword" user name "ngocminh" with administrator privileges
Тем не менее, я не могу просто сделать то же самое для запуска сервера MySQL
do shell script "/usr/local/mysql/bin/mysqld_safe" password "mypassword" user name "ngocminh" with administrator privileges
Результат сценария Apple гласит:
"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"
Тогда сервер MySQL не может быть запущен!
Кто-нибудь расскажет, что не так с моим сценарием, или я что-то пропустил. Любое предложение будет высоко оценено. Спасибо!
- РЕДАКТИРОВАТЬ 1 -
Попробуйте запустить этот скрипт вместо
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
AppleScript не сообщил об ошибке, но сервер MySQL все еще не загружен в соответствии с ps
команда
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
- РЕДАКТИРОВАТЬ 2 - ПРОБЛЕМА РЕШЕНА!
Я нашел способ обойти это. Просто создайте AppleScript с sudo
внутри для запуска сервера 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
источник