首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MongoDB -运行setFeatureCompatibilityVersion所需的特权是什么?

MongoDB -运行setFeatureCompatibilityVersion所需的特权是什么?
EN

Stack Overflow用户
提问于 2017-04-05 15:20:52
回答 3查看 1.7K关注 0票数 5

使用mongoDB 3.4.3在尝试创建带有排序规则的索引时,我将面临这个问题(https://jira.mongodb.org/browse/SERVER-26556)中描述的问题。

由于我已经从以前的版本升级,它说需要的是显式地允许向后兼容的3.4特性集,但是对于具有角色userAdminAnyDatabase的用户,我仍然没有权限:

代码语言:javascript
复制
> db.adminCommand({setFeatureCompatibilityVersion: "3.4"})
{
    "ok" : 0,
    "errmsg" : "not authorized on admin to execute command {setFeatureCompatibilityVersion: \"3.4\" }",
    "code" : 13,
    "codeName" : "Unauthorized"
}

我的问题是,用户需要什么角色才能做到这一点?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-05-22 13:34:04

使用具有root权限的用户工作。

认证后:

代码语言:javascript
复制
> use admin
> db.adminCommand({setFeatureCompatibilityVersion: "3.4"})
{ "ok" : 1 }
票数 5
EN

Stack Overflow用户

发布于 2019-01-29 04:25:21

我无法运行该命令,因为我收到了以下错误:

代码语言:javascript
复制
db.adminCommand( { setFeatureCompatibilityVersion: "3.4" } )
{
    "ok" : 0,
    "errmsg" : "not authorized on admin to execute command { setFeatureCompatibilityVersion: \"3.4\", $db: \"admin\" }",
    "code" : 13,
    "codeName" : "Unauthorized"
}

以下链接提供了详细信息:

https://dba.stackexchange.com/questions/159390/mongodb-all-commands-spit-out-not-authorized-on-admin-to-execute-command

我遵循的步骤(我正在使用Mac):

  1. sudo nano /usr/local/etc/mongod.conf
  2. 对安全性进行评论,如下所示:

  1. 重新启动MongoDB。sudo brew服务重新启动mongodb
  2. 使用mongodb连接并运行以下代码 使用管理 db.adminCommand( { setFeatureCompatibilityVersion:"3.4“})

  1. 取消mongod.conf中的安全性注释并重新启动MongoDB服务器。
票数 1
EN

Stack Overflow用户

发布于 2020-11-13 10:32:43

要能够执行setFeatureCompatibilityVersion,用户必须具有"clusterManager“内置角色。

参见这里的文档:https://docs.mongodb.com/manual/reference/built-in-roles/#clusterManager

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43235392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档