加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

(转)Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记

发布时间:2020-12-13 23:47:21 所属栏目:Linux 来源:网络整理
导读:转自:https://www.osyunwei.com/archives/8998.html 说明: 操作系统:CentOS Mongodb安装目录:/usr/local/mongodb Mongodb数据库存放目录:/home/data/mongodb/mongodb_data Mongodb日志存放目录:/home/data/mongodb/mongodb_log 实现目的: 对Mongodb数

转自:https://www.osyunwei.com/archives/8998.html

说明:

操作系统:CentOS

Mongodb安装目录:/usr/local/mongodb

Mongodb数据库存放目录:/home/data/mongodb/mongodb_data

Mongodb日志存放目录:/home/data/mongodb/mongodb_log

实现目的:

对Mongodb数据库日志按天保存,并且只保留最近7天的日志记录。

具体操作:

  • 使用Mongodb数据库自带的命令来切割日志
ps -def | grep mongod
kill -SIGUSR1 <mongod process id>

1.创建Mongodb数据库日志切割脚本

vi /home/crontab/cut_mongodb_log.sh             #编辑
#!/bin/sh
datafile=/home/data/mongodb/mongodb_data        #Mongodb数据库存放目录
logfile=/home/data/mongodb/mongodb_log          #Mongodb日志存放目录
days=7                                          #代表删除7天前的备份,即只保留最近7天的备份
/bin/kill -SIGUSR1 `cat $datafile/mongod.lock`  #切割日志
find $logfile/ -mtime +$days -delete            #删除7天前的备份文件
:wq!                                            #保存退出
chmod +x   /home/crontab/cut_mongodb_log.sh     #添加执行权限

2.添加任务计划,修改/etc/crontab (也可以直接通过crontab -e 编辑

vi /etc/crontab                                 #在最后一行添加
0 0 * * * /home/crontab/cut_mongodb_log.sh      #表示每天凌晨执行备份
:wq!                                            #保存退出

3.重新启动crond使设置生效

/etc/rc.d/init.d/crond restart 
chkconfig crond on                              #设为开机启动
service crond start                             #启动

至此,Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录完成。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读