• 技术文章 >数据库 >MongoDB

    mongodb连接数据库的用户权限不够怎么解决?

    yangyang2020-05-23 14:34:10原创2942

    创建用户设置用户权限:

    # 启动数据库
    mongod --dbpath /Users/joyce/mongodb/db --auth
    # 连接数据库
    mongo
    #使用数据表
    use admin
    #创建超级用户管理员
    db.createUser({
        user:'myUserAdmin',
        pwd:'password',
        roles:[
            {
                role:'userAdminAnyDatabase',
                db:'admin'
            }
        ]
    })
    #给数据表创建用户
    use dbname
    db.createUser({
        user:'username',
        pwd:'password',
        roles:[
        {
            role:'readWrite',
            db:'dbname'
        },
        {
            role:'Read',
            db:'dbname'
        }
        ]
    })

    mongoose连接

    let dbUrl = "mongodb://username:password@ip:27017/dbname";
    mongoose.connect(dbUrl, { useNewUrlParser: true });

    权限说明

    Read:允许用户读取指定数据库

    readWrite:允许用户读写指定数据库

    dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile

    userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户

    clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。

    readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限

    readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限

    userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限

    dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。

    root:只在admin数据库中可用。超级账号,超级权限

    更多mongodb相关文章请关注python自学网

    专题推荐:mongodb
    品易云
    上一篇:mongodb慢查询是什么? 下一篇:mongodb权限有哪些?

    相关文章推荐

    • mongodb数据库备份不完整是什么原因?怎么解决?• mongodb如何查找最后几项?• mongodb服务在哪里启动?• mongodb慢查询是什么?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网