MST

星途 面试题库

面试题:MongoDB 中等难度备份技巧面试题

在 MongoDB 中,使用 mongodump 进行备份时,如何备份特定的数据库和集合?请写出对应的命令参数,并简要说明备份后文件的存储格式及特点。
28.0万 热度难度
数据库MongoDB

知识考点

AI 面试

面试题答案

一键面试
  1. 备份特定数据库和集合的命令参数
    • 备份特定数据库:
      mongodump --uri="mongodb://<username>:<password>@<host>:<port>/<database_name>" --db <database_name>
      
      说明:--uri用于指定连接 MongoDB 的地址、用户名、密码等信息,如果没有认证,可省略usernamepassword部分。--db指定要备份的数据库名称。
    • 备份特定数据库中的特定集合:
      mongodump --uri="mongodb://<username>:<password>@<host>:<port>/<database_name>" --db <database_name> --collection <collection_name>
      
      说明:--collection指定要备份的集合名称,配合--db使用,可备份特定数据库中的特定集合。
  2. 备份后文件的存储格式及特点
    • 存储格式:备份后的文件以 BSON(Binary JSON)格式存储在文件系统中。每个集合会生成一个对应的.bson文件,用于存储集合中的文档数据,同时会生成一个对应的.metadata.json文件,用于存储集合的元数据信息,如索引等。
    • 特点
      • 紧凑高效:BSON 格式是一种二进制编码,相比 JSON 更加紧凑,占用空间小,在存储和传输数据时效率更高。
      • 保留数据类型:它能够保留 MongoDB 中的数据类型,比如日期、ObjectId 等,不像 JSON 会丢失部分特定数据类型信息。
      • 便于恢复:这种格式方便使用mongorestore工具进行数据恢复,能够快速准确地将备份数据恢复到 MongoDB 数据库中。