MongoDB学习(管理数据库和集合)

管理数据库

显示数据库列表  

show dbs

    

 

切换到其他数据库

use <database_name>

 

创建数据库

  MongoDB没有提供显式的创建数据库的MongoDB shell命令。数据库是在添加集合或用户时隐式地创建的。

  可使用use database_name命令创建数据库。但只有添加了至少一个文档,才可真正创建完一个数据库。

    

 

删除数据库

  在MongoDB shell 中删除数据库,必须先切换到该数据库,才可执行删除操作。

1 use database_name2 db.dropDatabase()

     

  方法dropDatabase()删除数据库后,不会修改当前数据库句柄db。如果在删除数据库后没有切换到其他数据库,则创建集合时将重新创建被删除的数据库。

    

 

获取数据库的统计信息

  db.stats()方法可以获取数据库包含的集合数、数据库大小、索引数等信息。

    

 

管理集合

显示数据库的集合列表

show collections

    

   也可通过Database对象的方法getCollectionNames()返回一个集合名数组。

    

 

创建集合

db.createCollection(name,[options])

   其中,参数name是创建的数据库的名称,options为可选参数。

参数列表:

cappend布尔值。为true时将创建一个固定集合,其大小不能超过属性size指定的值。默认为false
autoIndexId布尔值。为true时将自动为加入到集合中的每个文档创建_id字段,并根据这个字段创建一个索引。默认为true
size指定集合的大小,单位为字节
max指定固定集合最多可包含多少个文档。为给新文档腾出时间,将删除最旧的文档

    

  在MongoDB中不需要创建集合。当插入一些文档时,MongoDB会自动创建集合。

    

 

删除集合

db.collection_name.drop()

  如果选定的集合删除成功,drop()方法会返回true,否则返回false。

    

 

MongoDB Database Method(数据库方法)

方法名描述
db.cloneDatabase()从指定主机上克隆数据库
db.currentOp()显示当前正在进行的操作
db.commandHelp()返回数据库命令的帮助信息
db.createCollection()创建一个聚集集合(table)
db.cloneCollection()在MongoDB实例之间复制集合数据
db.copyDatabase()从指定的机器上复制指定数据库数据到某个数据库
db.dropDatabase();删除当前使用数据库
db.fsyncLock()刷新写入磁盘并锁定该数据库,以防止写入操作,并协助备份操作
db.fsyncUnlock()允许继续进行写入锁住的数据库(解锁)
db.getLogComponents()返回日志消息详细级别
db.getLastErrorObj()查看完整的错误结果
db.getMongo()查看当前db的链接机器地址
db.getCollection()得到指定名称的聚集集合(table)
db.getName()查看当前使用的数据库
db.getPrevError()返回包含自上次错误复位所有的错误状态文件
db.getCollectionNames()得到当前db的所有聚集集合
db.getCollectionInfos()返回当前数据库中的所有集合信息
db.getLastError()返回上一次错误,如果没有错误则为空
db.hostInfo()返回当前数据库主机系统的相关信息
db.killOp()终止指定的操作
db.listCommands()显示公共数据库的命令列表
db.logout()注销登录
db.printCollectionStats()显示当前db所有聚集索引的状态
db.resetError()重置db.getPrevError()和getPrevError返回的错误信息
db.repairDatabase()修复当前数据库
db.repairDatabase()修复当前数据库
db.runCommand()运行一个数据库命令
db.serverStatus()返回当前数据库状态的概要
db.setProfilingLevel()修改当前数据库的分析级别
db.stats()显示当前db状态
db.shutdownServer()关闭当前数据库运行实例或安全停止有关操作进程
db.setLogLevel()设置一个单独的日志信息级别
db.version()查看当前db版本

 

MongoDB Collection Method(集合方法)

方法名描述
db.collection.aggregate()聚合,主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果
db.collection.bulkWrite()批量写入
db.collection.createIndex()创建一个集合索引
db.collection.count()返回集合总数或匹配查询的结果集总数
db.collection.deleteOne()删除集合中的一个文档
db.collection.deleteMany()删除集合中的多个文档
db.collection.dataSize()返回集合的大小
db.collection.distinct()返回具有指定字段不同值的文档(去除指定字段的重复数据)
db.collection.dropIndex()删除一个集合中的指定索引
db.collection.dropIndexes()删除一个集合中的所有索引
db.collection.drop()删除当前数据库中的collection集合
db.collection.explain()返回各种方法的查询执行信息
db.collection.ensureIndex()已过时,现使用db.collection.createIndex()
db.collection.findOne()查询单条数据
db.collection.findOneAndReplace()查询单条数据并替换
db.collection.findOneAndDelete()查询单条数据并删除
db.collection.findOneAndUpdate()查询单条数据并更新
db.collection.find()查询集合,无参数则查询所有,并返回一个游标对象
db.collection.findAndModify()查询并修改
db.collection.getIndexes()返回当前集合的所有索引数组
db.collection.group()提供简单的数据聚合功能
db.collection.isCapped()判断集合是否为定容量
db.collection.insert()在当前集合插入一条或多条数据(或叫文档)
db.collection.insertMany()在当前集合插入多条数据
db.collection.insertOne()在当前集合插入一条数据
db.collection.reIndex()重建当前集合的所有索引
db.collection.renameCollection()重命名集合名称
db.collection.replaceOne()替换集合中的一个文档(一条数据)
db.collection.remove()从当前集合删除数据
db.collection.save()已插入数据更新
db.collection.stats()返回当前集合的状态
db.collection.storageSize()返回当前集合已使用的空间大小
db.collection.totalSize()返回当前集合的总占用空间,包括所有文件和所有索引
db.collection.totalIndexSize()返回当前集合所有的索引所占用的空间大小
db.collection.updateMany()修改集合中的多条数据
db.collection.update()修改集合中的数据
db.collection.updateOne()修改集合中的一条数据
db.collection.validate()执行对集合验证操作

相关文章