问题是MysqL本身不是由upstart处理的,所以我不能使用“启动”功能.
我能做什么 ?
解决方法 你有几个选择:1)让MysqL告知Upstart它已经通过发出一个事件来启动
initctl发出MysqL-started“或类似的.
这可以通过将initctl调用添加到/etc/init.d/MysqL来处理.
2)从正常的SysV运行级别禁用MysqL并创建一个包装器Upstart作业
启动它(不是这不处理停止 – 只是一个例子):
cat >>/etc/init/MysqL-sysv.conf<<EOT # wait for SysV job to finish start on stopped rc exec /etc/init.d/MysqL startEOT
然后,让你的工作“开始启动MysqL-sysv”.
这里的问题是,如果某人(或某些系统工具自动)将/etc/rc?.d链接重新添加到原始/etc/init.d/MysqL服务脚本,您将遇到麻烦.此外,您可能会发现MysqL实际上还没有准备好,直到它的主pID开始后的一段时间.数据库存在问题,因为即使它们已经启动(转换日志重放等),它们也可能需要一些时间来“在线”.
3)创建一个“启动停止rc”的新手工作(“服务员”)(即所有SysV工作声称已完成时启动),然后轮询等待MysqL准备就绪,然后退出.让你的工作“开始停止服务员”.
4)将MysqL转换为Upstart作业(最佳选项).这里有一个新贵MysqL配置的起点:https://github.com/devo-ps/init-scripts/tree/master/mysql/ubuntu
总结以上是内存溢出为你收集整理的linux – Upstart:在非upstart进程之后启动服务全部内容,希望文章能够帮你解决linux – Upstart:在非upstart进程之后启动服务所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)