【问题标题】:Apache MySQL on OS X control scriptOS X 控制脚本上的 Apache MySQL
【发布时间】:2011-10-30 00:59:12
【问题描述】:

所以我在我的 OS X Snow Leopard 上配置了 apache 和 mysql,到目前为止一切正常。我现在要做的是创建一个脚本,让我可以一目了然地启动/停止服务。

停止守护进程可以正常工作

mysqladmin -u root -p shutdown

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

> mysqld_safe
[CTRL-Z]
> bg

但是:我怎样才能在脚本文件中模拟呢?

【问题讨论】:

    标签: mysql macos shell terminal osx-snow-leopard


    【解决方案1】:

    把这个放到/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>
    

    然后运行:

    sudo launchctl load /Library/LaunchDaemons/com.mysql.mysqld.plist
    

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

    【讨论】:

      【解决方案2】:

      将进程发送到后台怎么样?

      mysql_safe &
      

      您也可以在启动过程中创建一个日志文件:

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

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

      【讨论】:

      • 那些脚本看起来很复杂......我可以直接使用它们吗,当然要配置它们以使用我的库和设置?
      • 我没有在堆栈之外尝试过它们,但它们很一般。您应该可以使用它们。
      猜你喜欢
      • 2010-10-19
      • 2013-12-16
      • 2014-04-23
      • 1970-01-01
      • 2012-02-05
      • 1970-01-01
      • 2015-01-17
      • 2016-03-11
      • 2021-12-28
      相关资源
      最近更新 更多