【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" : [ ]
}

猜你喜欢

转载自www.cnblogs.com/OliverQin/p/12304624.html