zoukankan      html  css  js  c++  java
  • Mongodb

    创建数据库
    use tt
    这样就创建了一个数据库,如果什么都不操作离开的话,这个库就会被系统删除.所以还要执行下面的命令:
    db.usr.insert({'name':'tompig'});
    db.usr.insert({'name':'tompig1','id':1});
    随便整了2个表,这个无所谓的,反正要导入表的话就删除掉这2个就可以了,目前只是想让数据库保持住.
    然后使用命令查看是否有保存tt这个数据库:
    show dbs
    3.配置用户
    use tt
    db.addUser('mongodb','123456');
    mongodb是用户名,123456是密码.
    好了,这样一个数据库和对这个数据库配置用户就完成了.
    mongodb常用命令:
    1、Help查看命令提示
    help
    db.help();
    db.yourColl.help();
    db.youColl.find().help();
    rs.help();
    2、切换/创建数据库
    use yourDB; 当创建一个集合(table)的时候会自动创建当前数据库
    3、查询所有数据库
    show dbs;
    4、删除当前使用数据库
    db.dropDatabase();
    5、从指定主机上克隆数据库
    db.cloneDatabase(“127.0.0.1”); 将指定机器上的数据库的数据克隆到当前数据库
    6、从指定的机器上复制指定数据库数据到某个数据库
    db.copyDatabase("mydb", "temp", "127.0.0.1");将本机的mydb的数据复制到temp数据库中
    7、修复当前数据库
    db.repairDatabase();
    8、查看当前使用的数据库
    db.getName();
    db; db和getName方法是一样的效果,都可以查询当前使用的数据库
    9、显示当前db状态
    db.stats();
    10、当前db版本
    db.version();
    11、查看当前db的链接机器地址
    db.getMongo();
    Collection聚集集合
    1、创建一个聚集集合(table)
    db.createCollection(“collName”, {size: 20, capped: 5, max: 100});
    2、得到指定名称的聚集集合(table)
    db.getCollection("account");
    3、得到当前db的所有聚集集合
    db.getCollectionNames();
    4、显示当前db所有聚集索引的状态
    db.printCollectionStats();
    用户相关
    1、添加一个用户
    db.addUser("name");
    db.addUser("userName", "pwd123", true); 添加用户、设置密码、是否只读
    2、数据库认证、安全模式
    db.auth("userName", "123123");
    3、显示当前所有用户
    show users;
    4、删除用户
    db.removeUser("userName");
    其他
    1、查询之前的错误信息
    db.getPrevError();
    2、清除错误记录
    db.resetError();

    mongoDB默认用户认证是关闭的。
      修改 /etc/mongod.conf 文件。mongoDB默认情况下任何客户端都可以连接27017端口,且没有认证,默认情况下没有管理员帐户。通过修改这个配置文件可以更改为登陆时进行权限认证。
      mongoDB中如果想要给某个数据库创建一个用户,需要首先进入该数据库,然后使用addUser命令。在这里也可以将用户设置为只读(db.addUser("jack","jack",true),第三个参数表示是否时“只读用户”)。

      要使用超级管理员,需要先连接admin数据库并登陆管理员帐户,然后连接其他数据库就可以行使管理员权限。

      用户信息保存及认证过程

      类似MySQL将系统用户信息保存在mysql.user表。MongoDB也将系统用户的username、pwd保存在admin.system.users集合中。其中pwd = md5(username + “:mongo:” + real_password)。这本身并没有什么问题。username和:mongo:相当于对原密码加了一个salt值,即使攻击者获取了数据库中保存的md5 hash,也没法简单的从彩虹表中查出原始密码。

      权限管理常用命令

      1. #进入数据库admin

      use admin

      2. #增加或修改用户密码

      db.addUser('name','pwd')

      3. #查看用户列表

      db.system.users.find()

      4. #用户认证

      db.auth('name','pwd')
    这一个返回1就认证成功了,只有认证成功才能对数据库进行操作

      5. #删除用户

      db.removeUser('name')

      6. #查看所有用户

      show users

      7. #查看所有数据库

      show dbs

      8. #查看所有的collection

      show collections

      9. #查看各collection的状态

      db.printCollectionStats()

      10. #查看主从复制状态

      db.printReplicationInfo()

  • 相关阅读:
    c# ThreadPool 判断子线程全部执行完毕的四种方法
    很多人都爱玩的lol..
    Go 的位操作
    wrk压测工具
    Go函数作为值与类型
    家用PC发展设想
    开车的烦恼
    一款一体机的设想
    nodejs开发环境的搭建
    Python网页抓取程序(续)
  • 原文地址:https://www.cnblogs.com/ITniu/p/5718618.html
Copyright © 2011-2022 走看看