MongoDB 创建 Database 和 Collection
在开始使用MongoDB(Version:3.2.9)之前,必须首先在MongoDB中创建 Database 和 Collection。Database是相互独立的,每个Database都有自己的Collections,不同的database中,可以存在名字相同的collection,但是Database不是物理存储单位,MongoDB以Collection为物理存储单位,每个collection都有自己的数据文件和index文件,这些文件以 .wt 结尾。
一,创建Collection
1,查看当前database中的collection列表
show collections
2,隐式创建Collection
在MongoDB中,Collection相当于关系型数据库的Table,用户不需要显式定义Collection就能向Collection插入数据。在第一次向Collection插入数据时,MongoDB会自动创建Collection;如果Collection已经存在于Database中,那么MongoDB直接向Collection中插入数据。
db.foo.insert({_id:1,name:"test"})
3,显式创建Collection
使用 db.createCollection() 显式创建Collection,通过指定Collection Option,创建特定用途的Collection。
Because MongoDB creates a collection implicitly when the collection is first referenced in a command, this method is used primarily for creating new collections that use specific options.
例如,创建固定集合(Capped Collection),普通集合能够自动增长以容纳更多的doc,但是固定集合有最大的size,容纳的doc不能超过限制(max选项)。
db.createCollection("log", { capped : true, size : 5242880, max : 5000 } )
4,删除collection,调用collection的drop方法删除collection
db.collection_name.drop()
二,创建database
1,查看MongoDB的database列表
show dbs
查看当前连接所在的Database
db
2,使用use 命令创建database
use my_database_name
MongoDB返回以下信息,use 命令只是向MongoDB注册database,并没有实际的创建使用show dbs 查看,列表中没有该database。
switched to db my_database_name
3,在当前database中创建collection,并向集合中插入数据
db.foo.insert({_id:1,name:"test"})
此时,MongoDB真正创建database,查看存储数据的folder,发现多了两个.wt文件,一个用于存储数据,一个用于存储index。使用show dbs 查看,列表中存在该database。
三,删除database
删除database时,必须十分小心,除非用于测试环境,否则,不要轻易使用这个命令
1,使用use命令,切换到指定的database
use database_name
2,使用db命令,查看当前database,避免删错
db
3,删除当前database
db.dropDatabase()
参考文档:
MongoDB 创建 Database 和 Collection的更多相关文章
- MongoDb 创建、更新以及删除文档常用命令
mongodb由C++写就,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理.关于它的一个最简洁描述为:scalable, high-performance, o ...
- MongoDB整理笔记のCapped Collection
1.简单介绍 capped collections 是性能出色的有着固定大小的集合,以LRU(Least Recently Used 最近最少使用)规则和插入顺序进行age-out(老化移出)处理,自 ...
- linux环境给mongodb创建索引
首先我们来了解索引,如果有基础的可以直接看最后面的操作. 可参照 DoNotStop 的CSDN 博客 ,全文地址请点击: https://blog.csdn.net/u013725455/artic ...
- 关于mongodb创建索引的一些经验总结(转)
查看语句执行计划: explain() 在mongodb3+版本后输出格式发生改变: 详情参见:https://docs.mongodb.com/v3.0/reference/method/curso ...
- MongoDB创建集合和删除集合05-14学习笔记
MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写,是一个基于分布式文件存储的开源数据库系统.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关 ...
- Mongodb创建数据库
基本语法 MongoDB 创建数据库的语法格式如下: use DATABASE_NAME 如果数据库不存在,则创建数据库,否则切换到指定数据库. 实例 以下实例我们创建了数据库 coderschool ...
- Oracle数据库如何创建DATABASE LINK?
Oracle数据库如何创建DATABASE LINK? 2011-08-09 14:54 taowei20061122 CSDN博客 http://blog.csdn.net/taowei20061 ...
- oracle 创建database Link
当两台不同的数据库服务器想要共享一部分数据的时候,可以通过创建database Link的方式实现. 创建全局database links ,则必须使用systm或sys用户,在database前加p ...
- 为MongoDB创建一个Windows服务
一:选型,根据机器的操作系统类型来选择合适的版本,使用下面的命令行查询机器的操作系统版本 wmic os get osarchitecture 二:下载并安装 附上下载链接 点击安装包,我这里是把文件 ...
随机推荐
- [翻译] ORMLite document -- How to Use Part (二)
前言 此文档翻译于第一次学习 ORMLite 框架,如果发现当中有什么不对的地方,请指正.若翻译与原文档出现任何的不相符,请以原文档为准.原则上建议学习原英文文档. ----------------- ...
- Hadoop 学习资料集锦
Hadoop 资料 虾皮系列教程. Sqoop 资料 官方安装文档. 浪迹天涯博客. 瀚海星空博客. ……
- linux系统CentOS7
linux系统CentOS7 到http://mirrors.sohu.com/mysql/下载想要的mysql版本 这里用到的是 mysql-5.6.33-linux-glibc2.5-x86_64 ...
- [VijosP1639]机密文件 题解
题目大意: m个人抄n份资料,资料有编号,每人抄连续的几份资料,每份资料页数不一定相等,每个人抄的速度相同,求使得总时间最少的方案(总时间相同,越前面的人抄的越少) 思路: 假设每人一天抄一页,二分天 ...
- Linux Shell中单引号、双引号、反引号的区别【转载】
linux shell可以识别4种不同类型的引字符号: 单引号字符' 双引号字符" 反斜杠字符\ 反引号字符` 1. 单引号 ( '' )# grep Susan phonebook Sus ...
- Xcode8中处理打印日志的配置
Xcode8中处理打印日志的配置
- java-通过JDBC操作数据库
一.加载驱动 这里我们用Class.forname();来加载驱动,用此语句会提示排除异常. Class.forName("com.mysql.jdbc.Driver"); 括号中 ...
- siteserver cms选择栏目搜索无效
标签必须以空格分开,且option 的value必须给id不能给名称
- 串口计时工具Grabserial简介及修改(添加输入功能)
Grabserial是Tim Bird用python写的一个抓取串口的工具,这个工具能够为收到的每一行信息添加上时间戳. 如果想对启动时间进行优化的话,使用这个工具就可以简单地从串口输出分析出耗时. ...
- .NET C#-- 利用BeginInvoke与EndInvoke完成异步委托方法并获取方法执行返回值示例
//定义委托 delegate string MyDelegate(string name); //定义委托调用函数 public string Hello(string name) { Thread ...