升级OS X我安装MySQL后停止加载在启动时。
这在MySQL穿行说:
“启动项安装添加变量MYSQLCOM = -YES-系统配置文件/ etc / hostconfig中。如果要禁用的MySQL自动启动,改变这个变量MYSQLCOM = -NO-。”
所以,我打开该文件,它说:
# This file is going away
AFPSERVER=-NO-
AUTHSERVER=-NO-
TIMESYNC=-NO-
QTSSERVER=-NO-
MYSQLCOM=-YES-
我认为OSX Dev的加入# This file is going away
,但我不能肯定。
如果是这样的话,什么是启动MySQL上OSX优胜美地启动的正确方法?
这是固定的:
首先,创建一个新的文件:/Library/LaunchDaemons/com.mysql.mysql.plist
<?xml version="1.0" encoding="UTF-8"?>
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true />
<key>Label</key>
<string>com.mysql.mysqld</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/mysql/bin/mysqld_safe</string>
<string>--user=mysql</string>
</array>
</dict>
</plist>
然后更新权限并将其添加到launchctl
:
sudo chown root:wheel /Library/LaunchDaemons/com.mysql.mysql.plist
sudo chmod 644 /Library/LaunchDaemons/com.mysql.mysql.plist
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist
如果你安装的MySQL通过自制软件 ,你可以拥有launchd
在通过登录启动MySQL:
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
接受的答案没有工作到自动启动我的MySQL服务器(而事实上我的首选项面板每次我试图打开它,而它是活跃的时候坠毁系统偏好设置)。 我跟着从说明了MySQL 5.6手册 ,它终于再次自动启动! 创建文件/Library/LaunchDaemons/com.oracle.oss.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.oracle.oss.mysql.mysqld</string>
<key>ProcessType</key> <string>Interactive</string>
<key>Disabled</key> <false/>
<key>RunAtLoad</key> <true/>
<key>KeepAlive</key> <true/>
<key>SessionCreate</key> <true/>
<key>LaunchOnlyOnce</key> <false/>
<key>UserName</key> <string>_mysql</string>
<key>GroupName</key> <string>_mysql</string>
<key>ExitTimeOut</key> <integer>600</integer>
<key>Program</key> <string>/usr/local/mysql/bin/mysqld</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/mysql/bin/mysqld</string>
<string>--user=_mysql</string>
<string>--basedir=/usr/local/mysql</string>
<string>--datadir=/usr/local/mysql/data</string>
<string>--plugin-dir=/usr/local/mysql/lib/plugin</string>
<string>--log-error=/usr/local/mysql/data/mysqld.local.err</string>
<string>--pid-file=/usr/local/mysql/data/mysqld.local.pid</string>
<string>--port=3306</string>
</array>
<key>WorkingDirectory</key> <string>/usr/local/mysql</string>
</dict>
</plist>
并运行在创建文件后,下面的命令:
cd /Library/LaunchDaemons
sudo chown root:wheel com.oracle.oss.mysql.mysqld.plist
sudo chmod o-w com.oracle.oss.mysql.mysqld.plist
sudo launchctl load -F com.oracle.oss.mysql.mysqld.plist
有一个bash脚本由MacMiniVault ,它会为你做这一点-安装MySQL为好。 还有一个文章描述的过程。
建议的文章,管脚本直入终端中并运行它,但因为这有一些严重的安全隐患,这是一个好主意本地运行前先下载并检查脚本。
注:该答复中回应对以下上述文章中对指令进行安全隐患的意见被重写。 它通常是一个坏主意,管来历不明的 shell脚本直接打坏。 另外,如果你不明白的脚本或信任的作者,不使用它。
我的Mac上埃尔卡皮坦运行。 通过BREW安装了MySQL。
mysql.server status
告诉我,我有一些问题需要解决:
ERROR! MySQL is not running, but PID file exists
发现homebrew.mxcl.mysql.plist
文件/usr/local/Cellar/mysql/xxx/
目录,并将其复制到/Library/LaunchDaemons/
sudo cp homebrew.mxcl.mysql.plist /Library/LaunchDaemons/homebrew.mxcl.mysql.plist
将所有必要的权限:
sudo chown root:wheel /Library/LaunchDaemons/homebrew.mxcl.mysql.plist
sudo chmod 644 /Library/LaunchDaemons/homebrew.mxcl.mysql.plist
sudo launchctl load -w /Library/LaunchDaemons/homebrew.mxcl.mysql.plist
建议中使用的部分,通过描述贾斯汀