zoukankan      html  css  js  c++  java
  • MongoDB添加用户

    1、添加超级管理员用户

      1)切换到admin数据库

    >use admin

      2)添加管理员用户

     >db.addUser("admin","admin")

      添加了一个叫admin的用户,密码是admin。拥有对任意数据库的所有权限

      3)查看已添加的用户

    >db.system.users.find()
    { "_id" : ObjectId("528c24eb30c8aafadfc15f60"), "user" : "admin", "readOnly" : false, "pwd" : "7c67ef13bbd4cae106d959320af3f704" }

    2、添加普通用户

      1)切换到普通数据库mydb

    >use mydb  

      2)添加一个用户,只给予读权限

    db.addUser(
        {
            user:"lihuai",
            pwd:"123456",
            roles:["read"]
        }
    )    

      3)添加一个用户,作为mydb数据库的管理员

    db.addUser("heyman","123456")

      4)以认证方式启动mongodb

    [mongodb@localhost bin]$ ./mongod --dbpath=/home/mongodb/data --logpath=/home/mongodb/logs/mongodb.log --auth --fork

      5)以用户lihuai登录mydb

    [mongodb@localhost bin]$ ./mongo 127.0.0.1:27017/mydb -ulihuai -p123456

      发现可以查询,但是写入的时候会提示

    > db.users.insert({name:"zhangsan",age:30})
    not authorized for insert on mydb.users
    >

      6)以管理员heyman登录mydb,可以对mydb数据库进行读写操作,但不能对其他数据库进行任何操作

      7)超级管理员admin需登录到admin数据库后,再切换到其他数据库进行任何操作

    [mongodb@localhost bin]$ ./mongo 127.0.0.1:27017/admin -uadmin -padmin
    MongoDB shell version: 2.4.8
    connecting to: 127.0.0.1:27017/admin
    > use mydb
    switched to db mydb
    > 

      虽然是超级管理员,但是admin不能直接登录其他数据库

    [mongodb@localhost bin]$ ./mongo 127.0.0.1:27017/mydb -uadmin -padmin
    MongoDB shell version: 2.4.8
    connecting to: 127.0.0.1:27017/mydb
    Wed Nov 20 11:22:26.916 Error: 18 { code: 18, ok: 0.0, errmsg: "auth fails" } at src/mongo/shell/db.js:228
    exception: login failed
    [mongodb@localhost bin]$ 
  • 相关阅读:
    初识C++
    Linux下死锁的调研
    C语言实现单链表面试题(进阶篇)
    C语言实现单链表面试题(基础篇)
    IPC之—共享内存
    IPC之—信号量
    IPC之—消息队列
    初识多线程
    Mysql5.7安装
    RabbitMQ单节点安装/使用!
  • 原文地址:https://www.cnblogs.com/luxh/p/3433094.html
Copyright © 2011-2022 走看看