千家信息网

MongoDB在系统数据库local中无法创建用户怎么办

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,小编给大家分享一下MongoDB在系统数据库local中无法创建用户怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!前
千家信息网最后更新 2026年11月02日MongoDB在系统数据库local中无法创建用户怎么办

小编给大家分享一下MongoDB在系统数据库local中无法创建用户怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

前言

我们知道,MongoDB的Oplog (operations log)记录了用户的最近一段时间的操作(时间长短主要受设置的oplogSize和程序的写入更新量的影响)。那么,如果其他部门(例如BI团队)需要抽取数据,从 local.oplog.rs中读取解析一个不错的选择。

oplog位于local数据下面,为了将权限最小化,大家需要创建此库的权限(还可以将权限细化到集合,再次不讨论)。

习惯性的,在local数据库下面创建,但是报错了。

执行脚本

db.createUser({user: "testuser_local",pwd: "testuser_local",roles: [ { role: "read", db: "local" } ]})

报错信息

2018-XX-XXT14:48:30.437+0800 E QUERY [thread1] Error: couldn't add user: Cannot create users in the local database :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.createUser@src/mongo/shell/db.js:1290:15
@(shell):1:1

查看mongoDB的官网介绍,发现确实不可以在local数据库下面创建账号

解决方案

其解决方案是,我们转到admin数据库下面,创建账号。

此时可以创建成功。

注意:(1)在程序端配置连接字符串时,相应的需要添加登入验证数据库参数 --authenticationDatabase admin

(2)通过NoSQLBooster登入时,Auth DB 选择执行创建命令的数据库名字(本实例为admin)

Default Database 的编辑项,选择oplog所在的local数据库

登入成功

(但是在测试过程中,发现此工具在这个小权限下,登入可以成功,但是有时候执行命令时报错,而通过 MongoDB shell 执行不报错。还需探究根本原因)

(3) 建议数据的拉取,在辅助节点上拉取,减少主库的压力。

以上是"MongoDB在系统数据库local中无法创建用户怎么办"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

数据 数据库 用户 成功 权限 篇文章 选择 怎么办 系统 内容 命令 方案 时间 程序 解决方案 账号 不错 最小 不怎么 习惯性 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 中智农互联网科技 互联网科技图片 广东万易互联网科技有限公司惠州分公司 朗新科技与工业互联网 科技制造互联网公司 互联网科技媒体 上海喔噻互联网科技 互联网科技ppt模板 狮子座互联网科技培训 昭通云南众福互联网科技有限公司 重庆互联网医院沙龙医盟信息科技 互联网科技商业 互联网与医疗科技 迪庆互联网科技招生 互联网行业科技股 特约风豹互联网科技为什么扣费 每天都有哪些好的互联网科技 本届互联网大会上的黑科技 优雇互联网科技有限公司 瑞安市蟠桃会互联网科技有限公司 科技企业和互联网企业 致聘互联网科技 互联网科技上市公司 互联网 视角下的科技创新 四川狮子座互联网科技 赶超互联网科技 微信多开 花神(南京)互联网科技有限公司 工业互联网展湾科技股份有限公司 广州互联网高科技取餐柜 保山浩联互联网科技有限公司
0