`

MongoDB 日志切换

阅读更多
MongoDB默认情况下不会自动的切换轮转日志的,这将会导致日志日渐增大,在繁忙的业务下,日志增长量非常大的。如此之大的日志文件,查看某天的日志也不太方便。如是,需要对mongodb 日志文件进行切换,保留7天。

1. SIGUSR1 方法

# kill -SIGUSR1 <mongod process id>
# find /data/mongodb_data/log/mongodb.log.* -mtime +7 -delete

该方法只能在Linux系统下进行。

你可以配置下crontab 定时运行以上命令,具体方法可以参考crontab定时运行程序

2. mongo logRotate 命令方法

use admin
db.runCommand( { logRotate : 1 } )


需要在mongos,mongod,config server运行。
该方法是Windows系统下的唯一方法。(不过不建议线上环境的mongodb跑在windows下)

3.Syslog Log Rotation

# vi /etc/logrotate.d/mongodb 
/opt/mongodb/log/mongodb.log {
    daily
    rotate 7
    compress
    dateext
    missingok
    notifempty
    sharedscripts
    copytruncate
    postrotate
        /bin/kill -SIGUSR1 `cat /data/mongodb_data/mongod.lock 2> /dev/null` 2> /dev/null || true
    endscript
}

# logrotate -f /etc/logrotate.d/mongodb


logrotate可参见《logrotate日志管理工具》

mongodb bug

不过mongodb的稳定性差强人意。在日志轮转中也会导致mongodb进程终止的。

转自并部分添加自己的感想: 运维生存时间

花下眠工作室
分享到:
评论

相关推荐

    MongoDB日志文件过大的解决方法

    总之,MongoDB日志文件过大的问题可以通过合理配置和适时执行`logRotate`命令来有效解决。定期检查和管理日志文件不仅有助于节省存储空间,还能保持数据库的高效运行。在实际操作中,应结合具体环境和需求,选择最...

    mongodb数据库分离和系统切换方案

    在“mongodb数据库分离和系统切换方案”中,我们探讨的是如何有效地管理MongoDB集群,包括数据库的分离、故障切换和系统优化策略。 1. **数据库分离**: 数据库分离通常是为了提高性能和可扩展性。在MongoDB中,...

    mongodb 使用手册

    - 高并发读写:适合实时分析和日志处理。 - 大数据存储:易于扩展,适应数据量快速增长。 - 非结构化数据:如图片、视频、JSON文档等。 ### 第 2 章 MongoDB 下载及安装 #### 2.1 下载地址 你可以从官方网站...

    mongodb启动加入windows服务

    2. **切换到MongoDB安装目录**:确保当前目录下有mongod.exe可执行文件,或者通过`cd`命令切换到包含该文件的目录。 3. **执行安装命令**:输入上面给出的命令行,执行后MongoDB将以服务的形式安装在Windows系统中。...

    基于MongoDB分布式集群架构的日志系统及分片方法.docx

    1. 高可用性:通过复制集机制,MongoDB可以在单个节点故障时自动切换,确保日志服务的连续性。 2. 高性能:分片技术可以将大规模日志数据分散在多个服务器上,提高读写速度,降低单点压力。 3. 可扩展性:随着数据...

    windows下mongodb安装与使用整理

    - 在日志文件夹下创建一个日志文件,例如命名为 `MongoDB.log`。 ##### 4. 启动 MongoDB 服务 - 打开命令提示符(cmd.exe),切换到 MongoDB 的 bin 目录下: ``` &gt;cd D:\mongodb\bin ``` - 运行以下命令来启动 ...

    MongoDB_two_MongoDB_

    2. 数据库与集合:介绍MongoDB中的数据库概念,如何创建和切换数据库,以及集合(类似于关系数据库中的表)的创建和操作。 3. 文档与插入:深入讲解文档的结构和组成,以及如何向集合中插入单个或多个文档。 4. ...

    mongodb.dll 关于C#的驱动连接mongodb数据库

    8. **复制集支持**:MongoDB支持复制集以实现高可用性,C#驱动也提供了对复制集的无缝支持,可以在多个节点间自动切换。 9. **事务与多文档原子性**:MongoDB从4.0版本开始支持多文档事务,C#驱动提供了相应的API来...

    MongoDB安装与设置.docx

    2. **切换目录**:进入MongoDB的bin目录,例如`D:\MongoDB\Server\4.2\bin`,使用`cd`命令。 3. **启动服务**:在命令行中输入`mongod --dbpath D:\MongoDB\data\db`启动MongoDB服务。 4. **验证启动**:在浏览器中...

    MongoDB4.28安装详细步骤及启动配置教程(Windows10)

    - **检查日志文件**:通过查看MongoDB的日志文件(`mongod.log`),可以了解服务启动和运行过程中是否有任何错误或警告。 通过以上步骤,可以在Windows 10操作系统上成功安装并配置MongoDB 4.2.8。这为开发者提供了...

    mongodb安装包及安装步骤(windows)

    1. 创建管理员用户:在MongoDB shell中,使用`use admin`切换到admin数据库,然后执行`db.createUser()`命令创建具有管理权限的用户。 2. 启用身份验证:在`mongod`启动命令中添加`--auth`参数,使MongoDB在启动时...

    Python Library-mongodblibrary

    10. **日志和调试**:在执行过程中,可以启用日志记录,通过`Set MongoDB Log Level`设置日志级别,便于调试和问题排查。 综上所述,`mongodblibrary`为Robot Framework用户提供了强大的MongoDB操作工具,使得在...

    Mongodb Manual.rar

    9. **操作与监控**:如何使用 MongoDB 的命令行工具、监控工具以及日志管理,进行日常维护和故障排查。 10. **备份与恢复**:详细说明如何备份和恢复 MongoDB 数据,以防止数据丢失。 11. **驱动程序与连接**:...

    mongodb-linux3.2.6

    4. 高可用性:MongoDB通过复制集(Replica Sets)提供高可用性,当主节点故障时,可以自动切换到副本节点,保证服务不中断。 5. 强大的查询语言:MongoDB的查询语言(MQL)允许对数据进行复杂的查询,同时支持聚合...

    MongoDB 32位可用

    4. 监控和优化:32位系统下的MongoDB可能需要更频繁地进行维护,例如定期清理日志、监控内存使用情况等,以保持良好的运行状态。 5. 社区支持:MongoDB有一个庞大的开发者社区,提供丰富的教程、文档和解决方案,...

    demo-mongodb.zip

    9. **安全性**:MongoDB支持身份验证、访问控制、SSL加密以及审计日志,以保证数据的安全。 10. **云服务**:MongoDB也提供了MongoDB Atlas,这是一个完全托管的云数据库服务,简化了部署、扩展和管理MongoDB的过程...

Global site tag (gtag.js) - Google Analytics