MongoDB 2.6.x 清理过大日志文件的方法

一、MongoDB日志清理步骤

1.使用数据库命令rotate日志,分别登陆到mongod和mongos实例上

# mongo --host localhost:27xxx
MongoDB shell version: 2.6.x
connecting to: localhost:27xxx/test
replicaset003:SECONDARY> db
test
replicaset003:SECONDARY> use admin
switched to db admin
replicaset003:SECONDARY> db.runCommand({logRotate:1})
{ "ok" : 1 }
replicaset003:SECONDARY>
replicaset001:ARBITER> exit
bye
# ll
total 22195424
-rw-r--r-- 1 mongod mongod        1124 Dec 20 11:04 mongoc.log
-rw-r--r-- 1 mongod mongod    33341517 Dec 20 10:59 mongoc.log.2016-12-20T03-01-17
-rw-r--r-- 1 mongod mongod        4944 Dec 20 11:07 mongod1.log
-rw-r--r-- 1 mongod mongod  680817815 Dec 20 11:03 mongod1.log.2016-12-20T03-04-01
-rw-r--r-- 1 mongod mongod        1030 Dec 20 11:07 mongod2.log
-rw-r--r-- 1 mongod mongod  1813798574 Dec 20 11:07 mongod2.log.2016-12-20T03-07-43
-rw-r--r-- 1 mongod mongod        2413 Dec 20 11:07 mongod.log
-rw-r--r-- 1 mongod mongod  1880520643 Dec 20 11:06 mongod.log.2016-12-20T03-06-17
-rw-r--r-- 1 mongod mongod        2071 Dec 20 11:05 mongos.log
-rw-r--r-- 1 mongod mongod 18319577575 Dec 20 10:52 mongos.log.2016-12-20T02-53-04

2.使用系统命令清空日志文件,保留日志

# cat /dev/null > mongos.log.2016-12-20T02-53-04
# cat /dev/null > mongod.log.2016-12-20T03-06-17
# cat /dev/null > mongod2.log.2016-12-20T03-07-43
# cat /dev/null > mongod1.log.2016-12-20T03-04-01
# cat /dev/null > mongoc.log.2016-12-20T03-01-17
#
[root@dev-mongo-001-242 mongo]# ll
total 28
-rw-r--r-- 1 mongod mongod 1338 Dec 20 11:09 mongoc.log
-rw-r--r-- 1 mongod mongod    0 Dec 20 11:10 mongoc.log.2016-12-20T03-01-17
-rw-r--r-- 1 mongod mongod 7670 Dec 20 11:10 mongod1.log
-rw-r--r-- 1 mongod mongod    0 Dec 20 11:10 mongod1.log.2016-12-20T03-04-01
-rw-r--r-- 1 mongod mongod 3594 Dec 20 11:10 mongod2.log
-rw-r--r-- 1 mongod mongod    0 Dec 20 11:10 mongod2.log.2016-12-20T03-07-43
-rw-r--r-- 1 mongod mongod 5247 Dec 20 11:10 mongod.log
-rw-r--r-- 1 mongod mongod    0 Dec 20 11:09 mongod.log.2016-12-20T03-06-17
-rw-r--r-- 1 mongod mongod 2297 Dec 20 11:10 mongos.log
-rw-r--r-- 1 mongod mongod    0 Dec 20 11:09 mongos.log.2016-12-20T02-53-04

二、思路

1.一般情况下数据库的日志理清都会有两种方式,一种是通过数据库命令,一种是系统命令。

2.日志的清理原文件一定要保留,不能使用rm来删除文件,切忌,我们目的是释放空间。

3.部分公司要求把日志归档到大数据平台以供分析使用,因此,在清理日志文件的时候需要搞清楚,切勿盲目蛮干。

三、官方文档

1 https://docs.mongodb.com/v2.6/tutorial/rotate-log-files/

英语学好的同学,做dba是非常容易的事情,所以大家要努力学好英语!

更多MongoDB相关教程见以下内容

MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里

相关推荐