当 monit 服务停止时停止 mysqld 服务

当 monit 服务停止时停止 mysqld 服务

我正在使用 monit 监控 mysqld,但我希望如果我停止 monit,那么 mysqld 服务也会停止。

答案1

最简单的方法是修改 Monitinit.d脚本以停止mysqld。这样做的主要问题是,Monit 包的未来更新可能会覆盖您的更改。

或者,您可以编写自己的init.d脚本来控制mysqldmonit,并使用它来代替提供的init.d脚本。

答案2

你从根本上不能,也不应该想这样做,因为这不是 monit 的设计工作方式。顾名思义,Monit 是一个监控系统,它内置了一些自动问题处理逻辑。我也想不出你为什么要做这样的事情,所以我无法为你提供其他解决方案实际的问题。

答案3

这可能有点简单,但是你有没有想过:

创建一个同时停止/启动两个服务的脚本,并使用它来调用它们而不是常规的 init.d 脚本?

如果您希望将它们作为命令运行,您可以将它们放入 bin 文件夹中。

答案4

是因为您想停止 MySQL 并进行维护或其他什么吗?

如果是这样,只需:

'monit unmonitor name_of_service_check_here'

... monit 将保留它。如果您已配置 monit 状态文件(默认为 /var/.monit_state 或类似文件),则即使在重新启动后,monit 也会记住取消监控等。您可能还想尝试 monit status 来查看所有或一项给定检查的当前状态:

monit status

就像沃姆布尔 (Womble) 所说的那样,首先解释你遇到了什么问题,而不是专注于一种(可能很糟糕的)解决方法。

相关内容