zoukankan      html  css  js  c++  java
  • MongoDB用户授权和管理

    1、mongodb安装好后第一次进入是不需要密码的,也没有任何用户,
    通过shell命令可直接进入,cd到mongodb目录下的bin文件夹,执行命令./mongo即可
    运行如下:
    [root@namenode mongodb]# ./bin/mongo
    MongoDB shell version: 1.8.2
    connecting to: test
    > use test;
    switched to db test
     
    2、添加管理用户(mongoDB 没有无敌用户root,只有能管理用户的用户 userAdminAnyDatabase),
    >use admin
    >db.createUser( {user: "admin",pwd: "123456",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
    注:添加完用户后可以使用show users或db.system.users.find()查看已有用户
     
    3、添加完管理用户后,关闭MongoDB,并使用权限方式再次开启MongoDB,
    这里注意不要使用kill直接去杀掉mongodb进程,(如果这样做了,请去data/db目录下删除mongo.lock文件),可以使用db.shutdownServer()关闭
     
    4、使用权限方式启动MongoDB
    ./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local//mongodb/mongod.log --fork --auth
    或者在配置文件中修改:
     auth = true
    #noauth = true
     
    5、进入mongo shell,使用admin数据库并进行验证,如果不验证,是做不了任何操作的。 
    > use admin
    > db.auth("admin","123456")   #认证,返回1表示成功
     
    6、验证之后还是做不了操作,因为admin只有用户管理权限,下面创建用户,用户都跟着库走,
    > use mydb
    > db.createUser({user: "root",pwd: "123456",roles: [{ role: "readWrite", db: "mydb" }]})
     
    7、使用创建的用户root登录进行数据库操作:
    [root@localhost mongodb]# mongo 127.0.0.1/mydb -uroot -p
    MongoDB shell version: 3.2.9
    Enter password:
    connecting to: 127.0.0.1/mydb
    > db
    mydb
    > use mydb
    switched to db mydb
    > show collections
     
    然后就可以进行增删改查各种数据操作...
  • 相关阅读:
    Java中Iterator类的详细介绍
    Java中Iterator类的详细介绍
    Java中Iterator类的详细介绍
    Java中Iterator类的详细介绍
    VC++的Unicode编程
    实现系统滚动条换肤功能
    透明位图的显示
    用于树控件消息处理的几个结构
    C++实现半透明按钮控件(PNG,GDI+)
    Bootstrap+Knockout.JS+ASP.Net MVC3+PetaPOCO实现CRUD操作
  • 原文地址:https://www.cnblogs.com/yangmingxianshen/p/8228088.html
Copyright © 2011-2022 走看看