MongoDB 常用命令总结

3A网络
• 阅读 540

1. 创建自定义数据库

use databaseName

如果 databaseName 数据库不存在, 新建数据库。如果存在,则连接该数据库。

2. 查看数据库列表

show dbs
# 自带数据库
admin   0.000GB
config  0.000GB
local   0.000GB

如果数据库中没有内容,则不会显示该数据库。

3. 统计数据库信息

db.stats()
# 选择 test 数据库
use test
# 统计数据库信息
db.stats()
{
        "db" : "test",          # 系统自带测试数据库
        "collections" : 0,      # 集合数量
        "views" : 0,            # 
        "objects" : 0,          # 文档对象的个数, 所有集合的记录数之和
        "avgObjSize" : 0,         # 平均每个对象的大小, 通过 dataSize / Objects 得到
        "dataSize" : 0,         # 当前库所有集合的数据大小
        "storageSize" : 0,       # 磁盘存储大小
        "numExtents" : 0,        # 所有集合的扩展数据量统计数
        "indexes" : 0,            # 已建立索引数量
        "indexSize" : 0,        # 索引大小
        "fileSize" : 0,            #
        "fsUsedSize" : 0,        #
        "fsTotalSize" : 0,        #
        "ok" : 1
}

4. 删除数据库

db.dropDatabase()
db.dropDatabase()   # 执行删除
{ "ok" : 1 }          # 返回

生产环境下,不能随便使用该命令。一旦执行,一般情况下具有不可恢复性。

5. 查看当前数据库下的集合名称列表

db.getCollectionNames()
db.getCollectionNames()
[ ] 

6. 查看数据库用户角色权限

show roles
# 显示 test 数据库的所有角色权限
show roles
{
        "role" : "dbAdmin",                # 数据库管理角色, 执行数据库管理相关操作功能
        "db" : "test",            
        "isBuiltin" : true,                # 内置角色
        "roles" : [ ],                    # 放置用户角色、权限等信息
        "inheritedRoles" : [ ]            
}
{
        "role" : "dbOwner",                # 提供数据库任何管理操作功能, 此角色\
                                        # 集合了 readWrite, dbAdminhe 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" : [ ]
}

实际生产环境下,执行 show roles 命令,获得的信息会有所变化。

7. 创建集合 (插入多条见说明)

db.tableName.insert()
# 如果集合存在, 插入文档。如果不存在,创建集合并插入文档
db.collectionName.insert(
    {
        name: "Mr.Z",
        age: 12
    }
)
# 插入成功提示
WriteResult({ "nInserted" : 1 })

如果集合存在, 插入文档。如果不存在,创建集合并插入文档

插入多条文档

db.collectionName.insert(

​ [

​ {

​ item: "item_1",

​ price: 12

​ },

​ {

​ item: "item_2",

​ price: 15

​ }

​ ]

)

8. 显示集合内容

db.collectionName.find()
db.collectionName.find()
{ 
    "_id" : ObjectId("5ba121d82288bab8681b83c5"), 
    "name" : "Mr.Z", 
    "age" : 12 
}

insert 命令,自动产生一个 _id 值。

insert 命令可以用 save 命令代替。若给 save 命令指定 _id 值,则会更新默认的 _id 值,如

db.collectionName.save(

​ {

​ _id: 1000,

​ isOk: "OK"

​ }

)。

9. 删除集合内容

db.collectionName.remove()
# 按条件删除
db.collectionName.remove({
    "name": "zs"
})

10. 查看数量

db.collectionName.find().count()

想要练习的小伙伴可以在3A云服务器上部署一套环境,自己练习下。

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
3年前
mysql 初始语句
1.创建数据库》》》CREATEDATABASE数据库名;(createdatabase) 结尾加分号》》》setnamesgbk;2.查看数据库列表》》》SHOWDATABASES;(showdatabase)3.选择数据库》》》USE数据库名;4.删除数据库》》》DROPDATABASE数据库名;(dropdatab
Wesley13 Wesley13
3年前
mysql 数据库的操作
–数据库的创建createdatabasegoods1;//创建数据库goods1;createdatabasegoods2ifnotexistsgoods1;//创建数据库goods1,如果不存在就创建createdatabasegoods3defaultcharactersetutf8collateutf
Stella981 Stella981
3年前
Linux 系统命令行下,对 SQLite3 数据库使用的一般操作
1.进入数据库sqlite3databaseName.db2.查看数据库.databases//数据库路径.tables//数据库内的表格3.创建表格CREATETABLEtableName(idINTEGERNOTNULLprimary
Wesley13 Wesley13
3年前
MongoDB学习(1)
不管我们学习什么数据库都应该学习其中的基础概念,在mongodb中基本的概念是文档、集合、数据库,下面我们挨个介绍。数据库一个mongodb中可以建立多个数据库,MongoDB中默认数据库为"db",该数据库存储在data目录中。在MongoDB中可以创建数据库,如果你想使用MongoDB,创建数据库不是必要的。"showd
Stella981 Stella981
3年前
HIVE的常用操作(HQL)语句
HIVE基本操作命令创建数据库\createdatabasedb\_name;\createdatabaseifnotexistsdb\_name;//创建一个不存在的数据库final查看数据库\showdatabases;选择性查看数据库\showdatabaseslike'f.\'
Wesley13 Wesley13
3年前
MongoDB增删改查
MongoDB增删改查查询数据库:showdbs进入数据库:useMYDB查询数据库中表:showtables在mongo中创建新的用户并赋予相应权限:db.createUser({user:<name_string,
Wesley13 Wesley13
3年前
thinkphp 基本配置
12returnarray(34//定义数据库连接信息5'DB\_TYPE''mysql',//指定数据库是mysql67'DB\_HOST''localhost',89'DB\_NAME''uchome',//数据库名1011'DB\_USER''root
Stella981 Stella981
3年前
Nosql数据库(一)——MongoDB(二)MongoDB的基本语法
1.进入test数据库//查看当前mongodb有哪些数据库showdbs//进入test数据库usetest//查看当前所在的数据库名称db2.向数据库的user集合中插入一个文档/db.colle
Wesley13 Wesley13
3年前
MongoDB学习笔记(3)
MongoDB删除数据库语法MongoDB删除数据库的语法格式如下:db.dropDatabase()删除当前数据库,默认为test,你可以使用db命令查看当前数据库名。实例以下实例我们删除了数据库runoob。首先,查看所有数据库:showdbs
Wesley13 Wesley13
3年前
MongoDB基本使用
成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作。输入help可以看到基本操作命令:showdbs:显示数据库列表 showcollections:显示当前数据库中的集合(类似关系数据库中的表) showusers:显示用户use<dbname:切换当前数据库,这和MSSQL里面的