2010-10-22 31 views
0

我试图让MySQL在launchd下运行,所以我设置了一个launchd项目,其中包含一个带有“mysql”作为值的“UserName”键。我这样做是因为当我启动mysql时,我通常会去:mysqld_safe --user = mysql。Launchd和用户映射

当我打开它,我得到:

10/22/10 11:13:02 AM com.apple.launchd[1] (com.mysql.mysqld463) Suspicious setup: User "mysql" maps to user: _mysql 
10/22/10 11:13:02 AM com.apple.launchd[1] (com.mysql.mysqld) Throttling respawn: Will start in 10 seconds 

和MySQL不会继续运行。我应该使用“_mysql”作为用户吗?我想知道用户映射,因为我按照MySQL发行版中的说明安装了我的数据库:使用mysql用户安装数据库并运行守护进程。

预先感谢您。

回答

0

只要有launchd就可以正常运行命令。其中一个变化是使用mysqld_safe的绝对路径。 mysqld_safe然后会产生一个mysql进程作为用户mysql运行,您将回到熟悉的领域。

+0

谢谢!我做到了,MySQL启动,但现在我得到这个: 10/22/10 2:03:58 PM \t com.apple.launchd [1] \t(0x301430.anonymous.nohup [1428])错误:launchd_core_logic.c :8297(24108):0 10/22/10 2:03:58 PM \t com.apple.launchd [1] \t(0x301430.anonymous.nohup [1428])在系统Mach引导程序中不允许切换会话。 10/22/10 2:03:58 PM \t com.apple.launchd [1] \t(0x301430.anonymous.nohup [1428])_vprocmgr_switch_to_session():kr = 0x44c。 MySQL似乎运行正常,但是当我卸载它时,我得到10/22/10 2:03:19 PM \t com.apple.launchd [1] \t(com.mysql.mysqld [1078])退出超时已过(20秒) 。杀死 – expora 2010-10-22 19:05:02

+0

那么,你可以回去尝试直接使用'User =“_mysql”'运行'mysql'。您也可以尝试以该用户身份运行'mysqld_safe'来查看是否避免了会话切换。 – 2010-10-22 19:35:48

+0

它不工作:(我试着同时使用UserName键和--user参数。到目前为止,最好的组合是UserName root和--user = mysql作为程序参数,但它给了我开关错误至少我让MySQL运行。 – expora 2010-10-22 21:37:06