MongoDB 简介及安装

实验原理

MongoDB是10gen公司开发的一款以高性能和可扩展性为特征的开源软件。它是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的,MongoDB最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。它是一个面向集合的,模式自由的文档型数据库。

所谓“面向集合”(Collection-Oriented),意思是数据被分组存储在数据集中,被称为一个集合(Collection)。每个集合在数据库中都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库(RDBMS)里的表(table),不同的是它不需要定义任何模式(schema)。Nytro MegaRAID技术中的闪存高速缓存算法,能够快速识别数据库内大数据集中的热数据,提供一致的性能改进。

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

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

实验步骤

MongoDB的主要特点:

  1. MongoDB提供了一个面向文档存储,操作起来比较简单和容易的非关系型数据库。

  2. 你可以在MongoDB记录中设置任何属性的索引来实现更快的排序。

  3. 你可以通过本地或者网络创建数据镜像,这使得MongoDB含有更强的扩展性。

  4. 如果负载增加(需要更多的存储空间和更强的处理能力),它可以分布在计算机网络中的其它节点上,这就是所谓的分片。

  5. MongoDB支持丰富的查询表达式,查询指令使用json形式的标记,可轻易查询文档中内嵌的对象和数组。

  6. MongoDB使用update()命令可以实现替换文档(数据)或者一些指定的数据字段。

  7. MongoDB中的Map/Reduce主要是用来对数据进行批量处理和聚合操作,Map函数调用emit(key,value)遍历集合中所有的记录,将key与value传递给Reduce函数进行处理。另外Map函数和Reduce函数是使用JavaScript编写的,所以可以通过db.runCommand和mapreduce命令来执行MapReduce操作。

  8. GridFS是MongoDB中的一个内置功能,可以用于存放大量小文件。

  9. MongoDB允许在服务端执行脚本,可以用JavaScript编写某个函数,直接在服务端执行,也可以把函数的定义存储在服务端,下次直接调用即可。

  10. MongoDB支持各种编程语言:ruby、python、java、c++、php、c#等多种语言并且MongoDB的安装也非常简单。

安装流程:

1.首先,在/data目录下创建mongodb1文件夹。

mkdir -p /data/mongodb1

2.切换目录到/data/mongodb1下,使用wget命令,下载MongoDB所需安装包mongodb-linux-x86_64-3.4.2.tgz。

cd /data/mongodb1  
wget http://192.168.19.201:60000/allfiles/mongodb1/mongodb-linux-x86_64-3.4.2.tgz  

3.将/data/mongodb1目录下MongoDB的安装包,解压到/apps目录下。

tar -zxvf /data/mongodb1/mongodb-linux-x86_64-3.4.2.tgz  -C  /apps/

4.切换到/apps目录下,将解压的mongodb-linux-x86_64-3.4.2重命名为mongodb。

cd /apps  
mv /apps/mongodb-linux-x86_64-3.4.2/  /apps/mongodb  

5.修改环境变量,使用vim打开~/.bashrc文件。

vim ~/.bashrc  

添加以下内容到~/.bashrc文件中。

#mongodb  
export MONGODB_HOME=/apps/mongodb  
export PATH=$MONGODB_HOME/bin:$PATH  

6.使用source命令,使用户环境变量生效。

source ~/.bashrc  

7.切换到/data目录下,创建MongoDB的数据存放目录db。

cd /data  
mkdir db  

8.切换到/apps/mongodb/bin目录下,启动MongoDB服务。

cd /apps/mongodb/bin  
mongod --dbpath=/data/db --logpath=/data/db/logs  

9.另外开启一个窗口,开启MongoDB数据库。

cd /apps/mongodb/bin  
./mongo  

10.执行命令,查看当前数据库。

show dbs  

11.至此MongoDB数据库安装完成,执行退出命令。

exit  

12.在刚才执行mongod --dbpath=/data/db --logpath=/data/db/logs的端口输入Ctrl+c,退出MongoDB服务。

优化:通过上面的MongoDB安装,我们已经将其安装成功并且启动,但是发现启动太过于麻烦,所以需要我们自己给MongoDB定义配置文件,因为MongoDB开发者没有配置样例,所以需要我们自己去创建并且写入内容。

13.首先我们使用vim编辑一个MongoDB的配置文件。

vim /apps/mongodb/bin/mongodb.conf 

将以下内容写入到mongodb.conf文件中。

#数据存放目录  
dbpath = /data/db  
#日志存放目录  
logpath = /data/db/logs  
#端口  
port = 27017  
#以守护程序的方式使用,即后台运行  
fork = true  
#日志输出方式,使用追加的方式写日志  
logappend = true  
#PID file的完整路径,如果没有设置,则没有PID文件  
pidfilepath = /apps/mongodb/mongo.pid  
#auth  
#auth = true  

14.使用如下命令启动MongoDB:

numactl mongod -config /apps/mongodb/bin/mongodb.conf  

15.接下来可以在任意目录启动MongoDB数据库。

mongo  

MongoDB数据库至此就安装完毕了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值