gpt4 book ai didi

shell - 如何让服务等到 MySQL 服务在启动时启动?

转载 作者:行者123 更新时间:2023-12-01 04:28:25 28 4
gpt4 key购买 nike

我写了一个服务,它应该只在 MySQL 服务启动后启动,因为实例启动。

操作系统:Centos 6.10。

如何让服务等到 MySQL 服务在启动时完全启动?

我尝试在/etc/init.d 中创建启动服务
启动服务脚本:

# chkconfig: 345 99 01
# description: service startup script
### BEGIN INIT INFO
# Required-Start: mysqld
### END INIT INFO
cd /path_of_server
./start.sh

我面临的问题是,我的服务在 MySQL 服务完全启动之前执行。

最佳答案

这可能会帮助您:

systemctl 有一个 is-active 子命令:

systemctl is-active --quiet service

如果服务处于事件状态,将退出状态为零,否则非零,使其成为脚本的理想选择:
systemctl is-active --quiet service && echo Service is running

如果您省略 --quiet,它还会将当前状态输出到其标准输出。

在 shell 脚本中创建一个无限循环,并在循环内使用上述命令检查 MySQL 是否正在运行。

一旦您发现 MySQL 正在运行,就启动您的服务并退出循环或脚本。

关于shell - 如何让服务等到 MySQL 服务在启动时启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56272747/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com