mongodb(CentOS7)定时切割日志

本文介绍如何通过shell脚本实现Mongodb数据库日志的按天切割与自动清理,确保仅保留最近30天的日志记录,同时展示如何设置cron任务自动化执行。
  • Mongodb安装目录:/usr/local/mongodb
  • Mongodb数据库存放目录:/usr/local/mongodb/data

  • Mongodb日志存放目录:/usr/local/mongodb/log

实现的效果:对Mongodb数据库日志按天保存,并且只保留最近30天的日志记录。

  • 创建Mongodb数据库日志切割脚本
vim /usr/local/mongodb/logIncision.sh #新增脚本,内容如下

# !bin/sh
datafile=/usr/local/mongodb/data #Mongodb数据库存放目录

logfile=/usr/local/mongodb/log #Mongodb日志存放目录

days=30 #代表删除30天前的备份,即只保留最近30天的备份

/bin/kill -SIGUSR1 `cat $datafile/mongod.lock` #切割日志

find $logfile/ -mtime +$days -delete #删除30天前的备份文件
  • 修改/etc/crontab,添加计划任务
vim /etc/crontab #再末尾追加

0 0 * * * root /usr/loal/mongodb/logIncision.sh  #表示每天0点执行日志切割
  • 重启crond,是配置生效
systemctl restart crond #重启crond

chkconfig crond on #设置为开机启动

最终效果:每天会在/usr/local/mongodb/log目录下生成类似mongo.log.2019-03-08T13-25-01的日志记录

并且只保留最近30天的日志记录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值