mdserver-web/plugins/mongodb/check.sh

43 lines
1.0 KiB
Bash
Raw Permalink Normal View History

2025-09-17 00:44:37 -04:00
#!/bin/bash
# MongoDB 监控脚本
# 功能:检查 MongoDB 是否运行,如果停止则自动重启
# MongoDB 服务名称(根据你的系统配置调整)
SERVICE_NAME="mongod"
# 检查 MongoDB 状态函数
check_mongodb() {
# 检查 MongoDB 进程是否在运行
if pgrep -x "$SERVICE_NAME" > /dev/null; then
echo "$(date): MongoDB 正在运行"
return 0
else
echo "$(date): MongoDB 已停止"
return 1
fi
}
# 重启 MongoDB 函数
restart_mongodb() {
echo "$(date): 尝试重启 MongoDB..."
# 根据你的系统选择适当的命令
# 对于使用 systemd 的系统(如 Ubuntu 16.04+, CentOS 7+
2025-09-17 00:49:30 -04:00
if systemctl restart "mongodb"; then
2025-09-17 00:44:37 -04:00
echo "$(date): MongoDB 重启成功"
return 0
else
echo "$(date): MongoDB 重启失败"
return 1
fi
# 对于使用 init.d 的系统
# service mongod restart
}
if ! check_mongodb; then
echo "$(date): 检测到 MongoDB 停止运行"
restart_mongodb
fi