【MongoDB】针对数据库的基本操作

1.数据库操作

1.1 创建或切换数据库:use dbname

> use testdb  # 数据库不存在,则创建。存在,则连接。
switched to db testdb 

1.2 查看当前数据库:db

> db  # 返回当前数据库名字
testdb

1.3 查看所有数据库:show dbs

> show dbs
admin   0.000GB # 保留数据库,admin
config  0.000GB # 保留数据库,config
local   0.000GB # 保留数据库,local

1.4 查看某数据库信息:db.stats()

> db.stats()
{
	"db" : "testdb",    # 数据库名
	"collections" : 0,    # 集合数量,0表示新建数据库
	"views" : 0,        
	"objects" : 0,    # 文档对象的个数,所有集合的记录数之和
	"avgObjSize" : 0,    # 平均每个对象的大小,等于dataSize/objects的值
	"dataSize" : 0,    # 当前库所有集合的数据大小
	"storageSize" : 0,    # 磁盘存储大小
	"numExtents" : 0,    # 所有集合的扩展数据量统计数
	"indexes" : 0,    # 已建立的索引数量
	"indexSize" : 0,    # 索引大小
	"scaleFactor" : 1,
	"fileSize" : 0,
	"fsUsedSize" : 0,
	"fsTotalSize" : 0,
	"ok" : 1    # 本次取stats是否正常
}

1.5 删除数据库:db.dropdatabase()

> db.dropDatabase()
{ "dropped" : "custdb", "ok" : 1 } # 表示已经成功删除数据库custdb

1.6 查看当前数据库下的集合名称:db.getCollectionNames()

> db.getCollectionNames()

1.7 查看数据库用户角色权限:show roles

show roles可以查看当前数据库的用户角色权限及用户名、密码等信息

> use test
switched to db test
> show roles
{
	"role" : "dbAdmin",    # 数据库管理角色,执行数据库管理相关操作
	"db" : "test",
	"isBuiltin" : true,    # 内置角色
	"roles" : [ ],    # 用户角色、权限等信息
	"inheritedRoles" : [ ]
}
{
	"role" : "dbOwner",    # 此角色集合了readWrite、dbAdmin、userAdmin角色授予的权限
	"db" : "test",
	"isBuiltin" : true,
	"roles" : [ ],
	"inheritedRoles" : [ ]
}
{
	"role" : "enableSharding",    # 提供数据分片操作权限
	"db" : "test",
	"isBuiltin" : true,
	"roles" : [ ],
	"inheritedRoles" : [ ]
}
{
	"role" : "read",    # 提供自定义业务数据库读取权限
	"db" : "test",
	"isBuiltin" : true,
	"roles" : [ ],
	"inheritedRoles" : [ ]
}
{
	"role" : "readWrite", # 提供自定义业务数据库读写权限
	"db" : "test",
	"isBuiltin" : true,
	"roles" : [ ],
	"inheritedRoles" : [ ]
}
{
	"role" : "userAdmin",     # 提供在当前数据库上创建和修改角色和用户的功能。由于该角色允许操作员向任何用户授予任何权限,该角色还间接的提供对数据库的超级用户(root)的访问权限
	"db" : "test",
	"isBuiltin" : true,
	"roles" : [ ],
	"inheritedRoles" : [ ]
}


1.8 查看当前数据库下的集合:show collections

> show collections
bookInfo
custInfo
posted @ 2020-02-13 22:51  OLIVER_QIN  阅读(297)  评论(0编辑  收藏  举报