基于OSX的ApacheMySQL控制脚本

基于OSX的ApacheMySQL控制脚本,mysql,macos,shell,terminal,osx-snow-leopard,Mysql,Macos,Shell,Terminal,Osx Snow Leopard,所以我在我的OSXSnowLeopard上配置了apache和mysql,到目前为止一切正常。我现在想做的是创建一个脚本,让我一眼就能启动/停止服务 停止守护进程可以很好地与 mysqladmin -u root -p shutdown 问题是控制mysql启动。要直接在终端上启动守护进程,我使用 > mysqld_safe [CTRL-Z] > bg 但是:如何在脚本文件中模拟此过程?将过程发送到后台怎么样 mysql_safe & 您还可以在启动期间创建日志文件:

所以我在我的OSXSnowLeopard上配置了apache和mysql,到目前为止一切正常。我现在想做的是创建一个脚本,让我一眼就能启动/停止服务

停止守护进程可以很好地与

mysqladmin -u root -p shutdown
问题是控制mysql启动。要直接在终端上启动守护进程,我使用

> mysqld_safe
[CTRL-Z]
> bg

但是:如何在脚本文件中模拟此过程?

将过程发送到后台怎么样

mysql_safe &
您还可以在启动期间创建日志文件:

mysql_safe --log-error=/tmp/mysqld.log &

此外,您还需要更多的验证,检查服务器的状态等。您可以看看我们在中是如何做到这一点的。MySQL的脚本放在/MySQL/scripts/ctl.sh中

将其放在
/Library/LaunchDaemons/com.MySQL.mysqld.plist中

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
        "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Label</key>
        <string>com.mysql.mysqld</string>
        <key>ProgramArguments</key>
        <array>
            <string>/usr/local/bin/mysqld</string>
            <string>--datadir=/var/mysql</string>
            <string>--skip_networking</string>
        </array>
        <key>UserName</key>
        <string>_mysql</string>
        <key>GroupName</key>
        <string>_mysql</string>
        <key>RunAtLoad</key>
        <true/>
</dict>
</plist>

请注意,如果您要将mysql安装到
/usr/local
以外的其他地方,那么您当然应该相应地更改mysqld的路径。

这些脚本看起来相当复杂。。。我可以直接使用它们吗?当然可以配置它们来使用我的库和设置。我没有在堆栈之外尝试过它们,但它们非常通用。你应该能够使用它们。
sudo launchctl load /Library/LaunchDaemons/com.mysql.mysqld.plist