[ 常见数据类型 ]
[ 管理员 ]
- 创建管理员
- admin 数据库中的是超级管理员,其他库中的是一般管理员
- 超级管理员可以创建其他管理员
- 在哪个数据库创建的管理员,只能在哪个数据库中进行登录
- 在非 admin 中创建的用户,只能赋予其所在数据库的相关权限
> use admin
// 创建用户(用户名 密码 权限列表)
> db.createUser({user:"username", pwd: "password", roles: ["root"]})
// 安全模式启动数据库
$ mongod --dbpath path --auth
> db.auth('username', "password")
> use dbLisi
// 只读管理员
> db.createUser(user: "lisi", pwd: "lisi", roles: ["read"])
// 读写管理员
> db.createUser(user: "wangwu", pwd: "wangwu", roles: ["readWrite"])
- 在 admin 中创建的超级管理员,可以赋予其 root 超级权限,或者是对其他数据库的权限列表
> use admin
> db.auth("group", "group")
// 管理员 group 可以在 group01 数据库中读取数据,可以在 group02 数据库中写入数据
> db.createUser(user:"group", pwd:"group", roles: [{role: "read", db: "group01"},{role: "write", db: "group02"}])
- 在哪个数据库中的管理员,只能在哪个数据库中删除,普通管理员无法删除自己
> use admin
> db.auth("admin", "admin")
> db.dropUser("lisi")
[ 数据库操作 ]
// 查看数据库列表
> show dbs
// 创建或者进入数据库
> use dbname
// 查看数据库中的集合列表
> show collections
// or
> show tables
// 删除数据库
> use dbname
> db.dropDatabase()
[ 集合操作 ]
// 创建集合
> use dbname
> db.createCollection("collectionName", options)
// 删除集合
> db.collectionName.drop()
// 查看集合中的文档列表
> db.collectionName.find()
// 格式化查看
> db.collectionName.find().pretty()
[ 文档操作 ]
db.collectName.insert(document)