监测mongodb服务并启动

宝塔面板安装的mongodb数据库,但是缺少一个进程守护工具。

只能通过面板的定时任务每分钟去检查端口27017的链接数并输出,

如果链接数为了0,就重启mongodb服务。

#!/bin/bash
current=$(date +%H.%M)
p27017_procnum=`netstat -nat | grep -i "27017" | wc -l`
echo "当前 "$current" 端口27017连接数 "$p27017_procnum

if [ $p27017_procnum -eq 0 ]; then
    chown -R mongo:mongo /tmp/mongodb-27017.sock
    chmod -R 700 /tmp/mongodb-27017.sock
    echo "/etc/init.d/mongodb start..."
    /etc/init.d/mongodb start 
fi

也许有同学会担心,服务没有出问题,就是没有客户端来连接,这种情况。

对与这种情况大家要清楚mongdo的链接类似于mysql的长连接。也就是只要有一次连接,这个连接就会保持很长一段时间,除非是你的mongodb是很长时间没有客户端使用,才会触发这种极端情况。这个每分钟检查的脚本只能属于临时应急措施。

相关推荐
云和数据.ChenGuang4 小时前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite
woshilys5 小时前
sql server 查询对象的修改时间
运维·数据库·sqlserver
Hacker_LaoYi5 小时前
SQL注入的那些面试题总结
数据库·sql
建投数据6 小时前
建投数据与腾讯云数据库TDSQL完成产品兼容性互认证
数据库·腾讯云
Hacker_LaoYi7 小时前
【渗透技术总结】SQL手工注入总结
数据库·sql
岁月变迁呀7 小时前
Redis梳理
数据库·redis·缓存
独行soc7 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍06-基于子查询的SQL注入(Subquery-Based SQL Injection)
数据库·sql·安全·web安全·漏洞挖掘·hw
你的微笑,乱了夏天7 小时前
linux centos 7 安装 mongodb7
数据库·mongodb
工业甲酰苯胺7 小时前
分布式系统架构:服务容错
数据库·架构
独行soc8 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍08-基于时间延迟的SQL注入(Time-Based SQL Injection)
数据库·sql·安全·渗透测试·漏洞挖掘