管理数据库

显示数据库列表  

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. SQLI LABS Challenges Part(54-65) WriteUp

    终于到了最后一部分,这些关跟之前不同的是这里是限制次数的. less-54: 这题比较好玩,10次之内爆出数据.先试试是什么类型: ?id=1' and '1 ==>>正常 ?id=1' ...

  2. django+mysql的使用

    Django中每一个模型model都对应于数据库中的一张表,每个模型中的字段都对应于数据库表的列.方便的是,django可以自动生成这些create table, alter table, drop ...

  3. ES 集群上,业务单点如何优化升级?

    摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! ES 基础 ES 集群 ES 集群上业务优化 一.ES 基础 ...

  4. 【4】Asp.Net Core2.2中间件多扩展对应应用

    [前言] 上一篇完成了Asp.Net Core 2.2全新的管道处理模型解析,“俄罗斯套娃”式的委托嵌套和传递,组建了扩展性无与伦比的管道模型!与此同时,委托嵌套过于复杂,使用起来并不友好,然后多种扩 ...

  5. Linux iptables 配置规则

    Linux iptables 防火墙配置规则 前言:把网上我感觉不错iptables的访问规则都统一在这里,以后做参考. modprobe ipt_MASQUERADE modprobe ip_con ...

  6. 第八周LINUX学习笔记

    vsftpd丶NFS丶SAMBA nfs基于rpcsamba基于cifs(smb)  DRBD: ftp:File Transfer protocol 文件传输协议 两个连接:       tcp:命 ...

  7. bat脚本+diskpart 脚本实现自动划分磁盘分区

    我提供的脚本只是案例展示,真实场景需要自行修改.(正好我今天看到一个规范的bat脚本,我放出来,大家一起学习下) 要求:将20G的磁盘1,分出4G为主分区,4G扩展分区(2个2G逻辑分区) 试验环境: ...

  8. Tomcat设置HTTPS访问

    根据查阅,选择了最方便的一种方法. 简单来说有两步,1:新生成一个密钥库keystore 2:配置 Tomcat 以使用该 keystore 文件.此时https可以访问,但会有证书不信任问题,介意的 ...

  9. JavaScript第一回-来龙去脉

    简写:JavaScript-JS   ECMAScript-ES 写在前面的话:啃文字大多时间不是件愉快的事情,但是我们必须过这个坎,让自己习惯,让自己不讨厌,至于喜欢不喜欢,我们等时间给出答案. J ...

  10. VS Code实用技能1 - 代码折叠、面包屑

    VS Code实用技能 VS Code实用技能1 - 代码折叠.面包屑 一.代码折叠 ubuntu ctrl + shift + { ctrl + shift + } ctrl + k , ctrl ...