五郎. 发表于 2018-10-25 13:30:46

MongoDB 日志太大的解决方法

  MongoDB的日志增长的很快,/var所在的空间马上就占满了,即便换到另一个磁盘分区保存日志,日志还是增长的很快,磁盘眼看要告磬。
  有一个好办法,就是使用旋转日志。
  MongoDB的旋转日志有点怪,Linux下mongd服务接受一个kill -SGIUSR1命令后就立刻将当前日志文件重命名为带日期的文件,然后创建新的日志文件。
  不想一般的旋转日志,可以配置旋转策略。不过没关系,经过测试,发送该命令时不会影响到MongoDB的服务。
  下面是一个例子,先查找进程id, 然后发送命令。
  root@www.linuxidc.com:/etc/init.d# ps -def | grep mongod
  mongodb    723    1 48 May04 ?      6-22:23:53 /usr/bin/mongod --config /etc/mongodb.conf
  root    22035 220120 20:22 pts/2    00:00:00 grep --color=auto mongod
  root@www.linuxidc.com:/etc/init.d# kill -SIGUSR1 723
  root@www.linuxidc.com:/etc/init.d# cd /home/mongodb/log/
  root@www.linuxidc.com:/home/mongodb/log# ls
  mongodb.logmongodb.log.2014-05-18T12-23-51
  root@www.linuxidc.com:/home/mongodb/log# ls -alh
  total 20G
  drwxrwxrwx 2 root    root    4.0K May 18 20:23 .
  drwxrwxrwx 4 root    root    4.0K Apr 20 21:25 ..
  -rw-r--r-- 1 mongodb nogroup34K May 18 20:24 mongodb.log
  -rwxrwxrwx 1 mongodb nogroup20G May 18 20:23 mongodb.log.2014-05-18T12-23-51
  官方文档:
  http://docs.mongodb.org/manual/tutorial/rotate-log-files/
  现在可以将之前20G的日志文件挪走或者删除了。
  也可以自己先个定时脚本,定期发送命令给mongod服务。
  Linux下设置MongoDB开机自启动 http://www.linuxidc.com/Linux/2011-07/39149.htm
  CentOS编译安装MongoDB http://www.linuxidc.com/Linux/2012-02/53834.htm
  CentOS 编译安装 MongoDB与mongoDB的php扩展 http://www.linuxidc.com/Linux/2012-02/53833.htm
  CentOS 6 使用 yum 安装MongoDB及服务器端配置 http://www.linuxidc.com/Linux/2012-08/68196.htm
  Ubuntu 13.04下安装MongoDB2.4.3 http://www.linuxidc.com/Linux/2013-05/84227.htm
  MongoDB入门必读(概念与实战并重) http://www.linuxidc.com/Linux/2013-07/87105.htm
  《MongoDB 权威指南》(MongoDB: The Definitive Guide)英文文字版 http://www.linuxidc.com/Linux/2012-07/66735.htm

页: [1]
查看完整版本: MongoDB 日志太大的解决方法