mongodb清理日志文件的方法:1、使用mongodb數據庫命令“db.runCommand({logRotate:1})”登錄到mongod和mongos實例中;2、然后使用“cat /dev/null > [文件名]”系統命令清空日志文件,保留日志即可。
具體內容如下:
一、日志清理步驟
1.使用數據庫命令rotate日志,分別登錄到mongod和mongos實例上
# mongo --host localhost:27xxxMongoDB 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.部分公司要求把日志歸檔到大數據平臺以供分析使用,因此,在清理日志文件的時候需要搞清楚,切勿盲目蠻干。
三、官方文檔
https://docs.mongodb.com/v2.6/tutorial/rotate-log-files/