如何在R中使用mongolite包创建新的MongoDB数据库
R语言mongolite包创建MongoDB数据库操作指南
结论
可以通过mongolite包实现MongoDB新数据库创建,操作逻辑完全遵循MongoDB原生的懒加载创建规则。
MongoDB本身没有独立的显式创建空数据库命令:命令行执行
use 新数据库名仅为切换到对应命名空间,只有当该库下产生第一条集合数据、索引等实际存储内容时,数据库才会被正式创建。
具体操作步骤
- 第一步:安装并加载mongolite包(首次使用执行安装)
# 安装依赖包 install.packages("mongolite") # 加载包 library(mongolite)
- 第二步:指定要创建的新数据库名称,初始化集合连接
以本地无认证MongoDB实例、创建名为my_new_db的新数据库为例:
# 初始化连接时直接指定db参数为待创建的新数据库名,collection可指定后续要使用的集合名 mongo_conn <- mongo( collection = "target_collection", db = "my_new_db", url = "mongodb://localhost:27017" )
注:执行完这一步时新数据库还未被实际创建,仅完成了命名空间指定。
- 第三步:插入任意测试数据触发数据库创建
# 插入测试数据 test_df <- data.frame(id = 1, remark = "trigger database creation") mongo_conn$insert(test_df)
- 第四步:验证数据库创建结果
# 连接admin库查询实例所有数据库列表 admin_conn <- mongo(db = "admin") all_dbs <- admin_conn$run('{"listDatabases": 1}') # 输出所有数据库名称,可确认my_new_db已存在 print(all_dbs$databases$name)
- 可选操作:删除测试数据(无需保留测试内容时执行)
# 清空测试集合内容,不影响已创建的数据库 mongo_conn$remove('{}')
补充说明
如果连接的MongoDB实例开启了身份认证,需要在url参数中携带认证信息,格式参考:mongodb://<用户名>:<密码>@<实例地址>:<端口>,如有必要还需额外指定options参数配置authSource等认证规则。
内容的提问来源于stack exchange,提问作者Phil
相关产品推荐
相关产品推荐

