MongoDB数据库介绍及安装(Mac版)

1.MongoDB数据库介绍

1.1 简介

MongoDB是一个基于分布式文件存储的数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。

1.2 特点

MongoDB数据库具有高性能、易部署、易使用,存储数据非常方便的特点。

主要功能特性有:

  • 面向集合存储,易存储对象类型的数据;

  • 模式*;

  • 支持动态查询;

  • 支持完全索引,包含内部对象;

  • 支持查询;

  • 支持复制和故障恢复;

  • 使用高效的二进制数据存储,包括大型对象(如视频等);

  • 自动处理碎片,以支持云计算层次的扩展性;

  • 支持RUBY,PYTHON,JAVA,C++,PHP等多种语言;

  • 文件存储格式为BSON(一种JSON的扩展);

  • 可通过网络访问。

1.3 使用原理

所谓“面向集合”(Collenction-Oriented),意思是数据被分组存储在数据集中,被称为一个集合(Collenction)。每个集合在数据库中都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库(RDBMS)里的表(table),不同的是它不需要定义任何模式(schema)。

模式*(schema-free),意味着对于存储在mongodb数据库中的文件,我们不需要知道它的任何结构定义。如果需要的话,你完全可以把不同结构的文件存储在同一个数据库里。

存储在集合中的文档,被存储为键-值对的形式。键用于唯一标识一个文档,为字符串类型,而值则可以是各种复杂的文件类型。我们称这种存储形式为BSON(Binary JSON)


2.MongoDB数据库安装

MongoDB的安装分为Windows下的安装和Mac的安装(Liunx和Mac趋同)。这里介绍Mac的安装步骤。

2.1 下载安装包

登录MongoDB官网下载安装包并解压
https://www.mongodb.com/download-center?jmp=nav#community

2.2 创建data/db文件夹

在mongodb-osx-ssl-x86_64-4.0.1文件夹下创建data文件夹
可通过mkdir data指令创建

在data文件夹下创建db文件夹
可通过mkdir db指令创建

文件夹结构:mongodb-osx-ssl-x86_64-4.0.1/data/db

2.3 指定数据存放位置

当前操作在mongodb-osx-ssl-x86_64-4.0.1/bin目录下
执行命令:./mongod –dbpath /User/yourName/…/mongodb-osx-ssl-x86_64-4.0.1/data/db

2.4 启动mongod

进入”mongodb-osx-ssl-x86_64-4.0.1/bin”目录,使用命令“./mongod”启动mongoDB server,启动后注意不要关闭终端。

这时候服务就可以开启了,链接默认端口是27017。

注:如果启动后报错exception in initAndListen: IllegalOperation: Attempted to create a lock file on a read-only directory: /data/db, terminating

错误产生的原因是权限问题,用下述命令解决:
sudo chown -R 用户名 /data/db

MongoDB数据库介绍及安装(Mac版)

2.5 启动mongo

另外打开一个终端窗口【快捷键 command+T 】,同样为了方便起见,进入”mongodb-osx-ssl-x86_64-4.0.1/bin”目录,运行命令”./mongo”
这时可以看到mongoDB的控制台在终端上出现了,这时就可以使用任意mongoDB的命令操作mongoDB数据了,就如同使用mysql命令行操作mysql一样。

注:如果觉得 mongodb-osx-ssl-x86_64-4.0.1目录太长,可以自己建立一个新的文件夹mongodb-osx ,然后把mongodb-osx-ssl-x86_64-4.0.1里的所有文件复制到mongodb文件夹下,之后的操作同上。

MongoDB数据库介绍及安装(Mac版)


3.下载并运行Robo 3T

如果要项目,使用图形界面比较直观,可以下载Robo 3T安装图形界面。

下载地址:https://robomongo.org/download

安装Robo 3T

启动后新建链接
MongoDB数据库介绍及安装(Mac版)

创建并连接后可通过图形界面监视mongoDB数据库
MongoDB数据库介绍及安装(Mac版)


上文:移动端屏幕适配(Rem+js方法)

更多内容,欢迎关注微信公众号“让知识成为资产”。