Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

I've sucessfully installed MySQL server (5.5.11) on my MAC Snow Leopard. I can start the server using PreferencePane, using command line sudo /usr/local/mysql/bin/mysqld_safe but cannot use the same command within AppleScript.

This is the output from running 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 server can be started using the command sudo apachetl start, then it could be implemented using an AppleScript script like this:

do shell script "apachectl start" password "mypassword" user name "ngocminh" with administrator privileges

However, I can't simply do the same for starting mysql server

do shell script "/usr/local/mysql/bin/mysqld_safe" password "mypassword" user name "ngocminh" with administrator privileges

The apple script result says:

"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"

Then MySQL server cannot be started!

Would anybody tell what's wrong with my script or I've missed something. Any suggestion will be highly appreciated. Thank you!

-- EDIT 1 --

Try to run this script instead

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 error reported by AppleScript but MySQL server is still not loaded according to ps command

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

-- EDIT 2-- PROBLEM SOLVED!

I found the way around it. Just creat an AppleScript with sudo inside for mysql server startup

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
share|improve this question
add comment

2 Answers 2

up vote 2 down vote accepted

PROBLEM SOLVED!

I found the way around it. Just create an AppleScript with sudo inside for mysql server startup

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
share|improve this answer
add comment

Have you tried something like this, starting from administrator?

do shell script "/sw/sbin/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

Source: http://menial.co.uk/2008/11/16/applescript-for-starting-and-stopping-apache-and-mysql/

share|improve this answer
    
Yes, I did. Although AppleScript doesn't report any error, MySQL server is not started. Please see update on question to see the output of commands. –  Ngoc Pham Apr 28 '11 at 2:32
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.