mongodb 常见操作, 设置管理员和用户登入

[ 启动客户端 => ./bin/mongo --host 192.168.200.100 ]

1: 查看所有已经创建的数据库  =>  show dbs  

2: 切换或者创建数据库  =>  use 数据库名称 

3: 删除当前数据库  =>  db.dropDatabase() 

4: 获取当前数据库的名称  =>  db.getName() 

5: 获取当前数据库的连接地址  =>  db.getMongo() 

7: 获取当前数据库的所有集合(表)  =>  show cellections 

8: 向集合(表)添加数据, 不存在的集合会自动创建 => db.集合名称.save(json)

9: 修改数据  =>  db.集合名称.update(json1, json2)

9.1: json1 为查询条件 如 {"id": 25}

9.2: json2 为修改成 如 {"name": "测试"}

9.3: 意思为 将 id 是 25 的所有数据的 name 字段修改为 "测试"

10: 删除数据  =>  db.集合名称.remove(json) 

10.1: json 和 9 的 json1 相似, 为需要删除的条件

11: 查询数据  =>  db.结合名称.find(json) 

11.1: json 和 9 的 json1 相似, 为需要查询的条件

12: 创建数据库超级管理员 => db.createUser({ user: "root", pwd: "920619",  roles: [ { role: "root", db: "admin" } ]})

12.1: user: 账号,  pwd: 密码,  db: 数据库 // 超级管理员只能在 admin 下创建

12.2: roles: 权限 有以下选择 =>

12.3: 数据库用户角色:read、readWrite;

12.4: 数据库管理角色:dbAdmin、dbOwner、userAdmin;

12.5: 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;

12.6: 备份恢复角色:backup、restore;

12.7: 当前数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase

12.8: 超级用户角色:root, 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)

12.9: 内部角色:__system

13: 重新启动mongodb登入客户端还和以前一样, 但是登入后你回答无法操作数据库

13.1: 登入用户 => use admin => db.auth('root', '920619') => 输出 1 表示登入成功

13.2: 超级管理员在 admin 下登入, 具体数据库的管理员在具体的数据库下登入

14: 删除用户可以直接操作 admin 下的 system.users 集合

原文地址:https://www.cnblogs.com/lovling/p/7986986.html