管理数据库

显示数据库列表  

show dbs

    

切换到其他数据库

use <database_name>

创建数据库

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

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

    

删除数据库

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

 use database_name
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() 执行对集合验证操作

MongoDB学习(管理数据库和集合)的更多相关文章

  1. MongoDB学习笔记——数据库安装及配置

    MongoDB数据库安装 MongoDB官方下载地址:https://www.mongodb.com/download-center 首先需要根据Windows版本选择正确的MongoDB版本进行安装 ...

  2. MongoDB学习笔记——数据库操作

    使用use数据库名称来创建数据库,如果该数据库已经存在则返回这个数据库 语句格式:use DATABASE_NAME >use mynewdb switched to db mynewdb 使用 ...

  3. MongoDB学习笔记——数据库的创建与初始

    Part1:MongoDB与SQL的概念对比 图片来源--菜鸟教程 Part2:MongoDB安装地址 直接下载地址:戳这里 备用地址:戳这里 通过备用地址(官网)下载时,要注意下面这个地方 Part ...

  4. MongoDB学习笔记-1

    mongod --dbpath D:\MogonDB3.4.10\db //开启数据库,无端口号mongod --dbpath D:\MogonDB3.4.10\db --port=10086 //开 ...

  5. 【MongoDB学习之二】MongoDB数据库、文档、集合、元数据

    环境 MongoDB 4.0 CentOS6.5_x64 一.连接语法格式: mongodb://[username:password@]host1[:port1][,host2[:port2],.. ...

  6. NoSQL学习二:MongoDB基本管理命令

    MongoDB命令学习  一.MongoDB命令帮助 在安装MongoDB后,启动服务器进程(mongod),可以通过在客户端命令mongo实现对MongoDB的管理和监控: 这是MongoDB最上层 ...

  7. MongoDB学习笔记(二:入门环境配置及与关系型数据库区别总结)

    一.下载及安装MongoDB MongoDB下载官网链接:http://www.mongodb.org/downloads 具体安装步骤教程:http://www.shouce.ren/api/vie ...

  8. MongoDB学习笔记-06 数据库命令、固定集合、GridFS、javascript脚本

    介绍MongoDB支持的一些高级功能: 数据库命令 固定大小的集合 GridFS存储大文件 MongoDB对服务端JavaScript的支持 数据库命令 命令的原理 MongoDB中的命令其实是作为一 ...

  9. MongoDB学习笔记(二)--Capped集合 && GridFS存储文件

    Capped集合                                                            Capped集合的大小是固定的,如果空间都被用完了,新添加的对象 ...

随机推荐

  1. 从壹开始前后端分离 40 || 完美基于AOP的接口性能分析

    旁白音:本文是不定时更新的.net core,当前主线任务的Nuxt+VueAdmin教程的 nuxt.js 之 tibug项目已上线,大家可以玩一玩:http://123.206.33.109:70 ...

  2. 使用MediatR重构单体应用中的事件发布/订阅

    标题:使用MediatR重构单体应用中的事件发布/订阅 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/10640280.html 源代码:https ...

  3. Python进阶:全面解读高级特性之切片!

    导读:切片系列文章连续写了三篇,本文是对它们做的汇总.为什么要把序列文章合并呢?在此说明一下,本文绝不是简单地将它们做了合并,主要是修正了一些严重的错误(如自定义序列切片的部分),还对行文结构与章节衔 ...

  4. C# 语音合成

    1. 引用System.Speech 2. 通过SpeechSynthesizer类朗读文本 new SpeechSynthesizer().SpeakAsync("我们都是好孩子We're ...

  5. ArcPy 批量给shp字段赋值

    工作中需要做大量图层的拼接,为了在拼接完成后还能知道原始数据文件是什么,所以写了个Python脚本对每个图层的SOURCE字段进行赋值. 附上Python代码: # -*- coding: utf-8 ...

  6. requirement failed: Unacceptable value for property 'kafka.timeline.metrics.host_in_memory_aggregation', boolean values must be either 'true' or 'false

    requirement failed: Unacceptable value for property 'kafka.timeline.metrics.host_in_memory_aggregati ...

  7. SpringBoot2.0之六 多环境配置

    开发过程中面对不同的环境,例如数据库.redis服务器等的不同,可能会面临一直需要修改配置的麻烦中,在以前的项目中,曾通过Tomcat的配置来实现,有的项目甚至需要手动修改相关配置,这种方式费时费力, ...

  8. 深入介绍Java中的锁[原理、锁优化、CAS、AQS]

    1.为什么要用锁? 锁-是为了解决并发操作引起的脏读.数据不一致的问题. 2.锁实现的基本原理 2.1.volatile Java编程语言允许线程访问共享变量, 为了确保共享变量能被准确和一致地更新, ...

  9. Packets larger than max_allowed_packet are not allowed(mysql数据查询提示:不允许超过允许的最大数据包)解决方案

    问题背景: 首先我的项目运用的时Mysql,在做一个数据更新操作的时候,提示异常:System.Exception:“ExecuteNonQuery:Packets larger than max_a ...

  10. Python爬虫10-页面解析数据提取思路方法与简单正则应用

    GitHub代码练习地址:正则1:https://github.com/Neo-ML/PythonPractice/blob/master/SpiderPrac15_RE1.py 正则2:match. ...