zoukankan      html  css  js  c++  java
  • MongoDB 权限管理 用户名和密码的操作

    在刚安装完毕的时候MongoDB都默认有一个admin数据库,而admin.system.users中将会保存比在其它数据库中设置的用户权限更大的用户信息。 
    当admin.system.users中一个用户都没有时,即使mongod启动时添加了--auth参数,如果没有在admin数据库中添加用户,此时不进行任何认证还是可以做任何操作,直到在admin.system.users中添加了一个用户。
    windows下打开DOS进入bin目录执行mongo打开shell:
    D:mongodb2.4.3in>mongo
    使用admin库:
    > use admin 
    > db.addUser("root","123456")
             "user" : "root", 
             "readOnly" : false, 
             "pwd" : "34e5772aa66b703a319641d42a47d696" 
    验证用户: 
    > db.auth("root","123456")  
    1   //验证成功,返回1 
    > show dbs //查看全部数据库
    admin   0.0625GB
    local   0.03125GB
    mydb    0.125GB
    test    (empty)
    > use mydb //使用mydb数据库
    switched to db mydb
    > db.addUser("101.key","123456")   //默认可读写,只读为db.addUser("101.key","123456",true)
    > db.system.users.find() //查看所有用户
    > db.system.users.remove({user:"10.key"})//给当前数据库删除用户
    >show collections  //查看所有集合
    >db.serverStatus() //可以获取到mongodb的服务器统计信息,其中包括 :全局锁,索引,用户操作行为等等这些统计信息
    > exit //退出
    D:mongodb2.4.3in>mongostat -uroot -p123456 --port 27017 //观看实时数据变化
     
    D:mongodb2.4.3in>mongo admin -uroot -p123456  //指定admin数据库,帐号登录
    -------------------------------------------------------------------------------------------------
    远程用户连接
    语法结构:mongo –uusername –ppwd ServerIP:port/dbname 
    其中port默认为27017 
    >mongo -uroot -p123456 192.168.2.150/admin 
    ---------------------------------------------------------------------------
    java 客户端链接主要代码:
     private static Mongo mg = null;
     private static Map dbMap = new HashMap();
     private DB db = null;
     public DAOMongo(){
      if (mg == null){
       try {
        mg = new Mongo("localhost", 27017);
       } catch (UnknownHostException e) {
        e.printStackTrace();
       } catch (MongoException e) {
        e.printStackTrace();
       }
      }
      if (dbMap.containsKey("mydb")){
       db = (DB)dbMap.get("mydb");
      }else{
       db = mg.getDB("mydb");
       boolean authResult =  db.authenticate("101.key", "123456".toCharArray());
       logger.info("authResult="+authResult);
       if (authResult){
        dbMap.put("mydb", db);
       }
      }
      //admin 库     root  123456
     }
  • 相关阅读:
    linux权限补充:rwt rwT rws rwS 特殊权限
    关于Linux操作系统下文件特殊权限的解释
    Java学习笔记——Java程序运行超时后退出或进行其他操作的实现
    Java实现 蓝桥杯 算法提高 判断名次
    Java实现 蓝桥杯 算法提高 判断名次
    Java实现 蓝桥杯 算法提高 日期计算
    Java实现 蓝桥杯 算法提高 日期计算
    Java实现 蓝桥杯 算法提高 概率计算
    Java实现 蓝桥杯 算法提高 概率计算
    Java实现 蓝桥杯 算法提高 复数四则运算
  • 原文地址:https://www.cnblogs.com/101key/p/3257415.html
Copyright © 2011-2022 走看看