文章目录
1 环境配置
1.1 下载MongoDB
- 不要在官网上下载,很麻烦
- http://dl.mongodb.org/dl/win32/x86_64 在这个地址下载对应版本的msi下载器。
- 最新版本的我一直装不成功,我就装4.0.2这个版本啦。网上好多教程都是这个版本
- 直接下一步到底,同时注意在正式启动安装时候,有个compass的东西不要勾选。也可以自己找个位置。我就比较懒了,直接默认在C盘的Program Files文件夹下。(如果此程序为32位,那安装完成之后,我们可以在Program Files(x86)文件夹下看到这个程序的文件夹,如果是64位的,那就在Program Files文件夹里的。)
- 安装成功,可以在 C:\Program Files\MongoDB\Server\4.0 这个文件夹下看到对应的MongDB文件。
(1)bin文件夹是二进制应用程序文件
(2)data存放MongoDB的数据
(3)log存放的是日志
6.把bin文件夹添加到计算机的环境变量里,便于以后通过cmd访问mongodb,
1.8 测试cmd下的mongo命令,表示成功完成
1.2 图形化界面的安装
- 百度搜索NoSQL Manager for MongoDB 选择社区版一路下一步到底
- 打开这个图形化工具,默认连接当前计算机上的mongo数据库。下一步
- 连接好数据库就可以右键选择shell,开始图形化界面的操作
- 图形化界面把当前所有命令看作一个脚本,可以保存下来,便于下一次重复使用。同时F5执行全部脚本,F6执行当前所在行,F9执行选中的内容。
1.3 MongoDB 数据库服务
1.数据库服务已经自动启动了,可以在任务管理器的服务窗口里找到,发现帮我们把MongoDB默认设置称为自动启动的服务。
2.通过cmd的mongodb可以成功连接到MongDB服务。
2 概念介绍
1.1 基本介绍
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
1.2 MongDB与SQL中的术语
SQL术语/概念 | MongoDB术语/概念 | 解释/说明 |
---|---|---|
database | database | 数据库 |
table | collection | 数据库表/集合 |
row | document | 数据记录行/文档 |
column | field | 数据字段/域 |
index | index | 索引 |
table | joins | |
primary | key | primary |
2.2.1 数据库
- 查看所有数据库
show dbs
show databases
- 查看当前数据库
db
- 创建数据库,直接使用这个数据库,如果对数据库进行了修改,会自动创建数据库
use mydb
- 数据库也通过名字来标识。数据库名可以是满足以下条件的任意UTF-8字符串。
不能是空字符串("")。
不得含有' '(空格)、.、$、/、\和\0 (空字符)。
应全部小写。
最多64字节。
- 有一些数据库名是保留的,可以直接访问这些有特殊作用的数据库。
admin: 从权限的角度来看,这是"root"数据库。要是将一个用户添加到这个数据库,这个用户自动继承所有数据库的权限。一些特定的服务器端命令也只能从这个数据库运行,比如列出所有的数据库或者关闭服务器。
local: 这个数据永远不会被复制,可以用来存储限于本地单台服务器的任意集合
config: 当Mongo用于分片设置时,config数据库在内部使用,用于保存分片的相关信息
2.2.2 数据集合
- 创建数据集合
- 集合就是 MongoDB 文档组,类似于 RDBMS (关系数据库管理系统:Relational Database Management System)中的表格。
集合存在于数据库中,集合没有固定的结构,这意味着你在对集合可以插入不同格式和类型的数据,但通常情况下我们插入集合的数据都会有一定的关联性。 - 合法的集合名
集合名不能是空字符串""。
集合名不能含有\0字符(空字符),这个字符表示集合名的结尾。
集合名不能以"system."开头,这是为系统集合保留的前缀。
用户创建的集合名字不能含有保留字符。有些驱动程序的确支持在集合名里面包含,这是因为某些系统生成的集合中包含该字符。除非你要访问这种系统创建的集合,否则千万不要在名字里出现$。
2.2.3 数据文档
- 文档是一组键值(key-value)对(即 BSON)。MongoDB 的文档不需要设置相同的字段,并且相同的字段不需要相同的数据类型,这与关系型数据库有很大的区别,也是 MongoDB 非常突出的特点。
一个简单的文档例子如下:
{“site”:“www.runoob.com”, “name”:“菜鸟教程”}
2. 下一节演示如何插入文档。