Linux下搭建MongoDB环境

Linux下搭建MongoDB环境

1.MongoDB简单说明

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

  b MongoDB是一个介于关系型数据库和非关系型数据库之间的产品,是非关系型数据库当中功能最丰富,最像关系型数据库的。它支持的数据结构非常松散,会将数据存储为一个文档,数据结构由键值对(key=>value)组成,是类似于json的bson格式,字段值可以包含其它文档、数组和文档数组,因此可以存储比较复杂的数据类型。

  c MongoDB最大的特点就是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系型数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

回到顶部

2.准备工作

  a 通过上面简单的介绍之后我们已经了解了MongoDB的基本信息,那么接下来我们首先需要在Linux下搭建它并且来使用它。

  b MongoDB包下载地址:Try MongoDB Atlas Products | MongoDB

操作需要的软件以及系统如下:虚拟机(Vmware),虚拟机中安装的Centos系统,Xshell,Xftp, MongoDB包。

3.MongoDB安装

  a 通过上面简单的准备工作之后,我们已经拥有了可以安装的包和发布的环境,如果上面没有准备充分,请自行准备,下面我们开始进行搭建环境

使用XShell连接Centos,连接成功后使用命令跳转到local下面创建自己的文件夹kencery,在此文件夹下面创建mongoDB文件夹,命令如下:
 

[root@localhostTEST ~]# cd /usr/local

[root@localhostTEST local]# mkdir kencery

[root@localhostTEST local]# cd kencery/

[root@localhostTEST kencery]# mkdir mongoDB

[root@localhostTEST kencery]# cd mongoDB/

c 然后使用Xftp将在上面下载的mongoDB包(mongodb-linux-x86_64-3.2.8.tgz)复制到mongoDB文件夹里面,并且将包解压,解压之后命名为mongoDB,如图所示:

[root@localhostTEST mongoDB]# tar -zxvf mongodb-linux-x86_64-rhel70-3.2.22.tgz

[root@localhostTEST mongoDB]# mv mongodb-linux-x86_64-rhel70-3.2.22 mongodb

     d 跳转到mongodb下进行操作(cd mongodb/),
     e自己创建两个文件夹:一个是db,一个是logs,db文件夹的作用是存放数据库目录,logs文件夹的作用是存放mongoDB的操作日志信息。
 

[root@localhostTEST mongoDB]# cd mongodb

[root@localhostTEST mongodb]# mkdir db

[root@localhostTEST mongodb]# mkdir logs

 

  f 添加完成之后,启动mongoDB,验证是否安装成功,这里指定的数据库目录选项为mongodb下创建的db,命令如下,如图所示,则提示启动成功。

./bin/mongod --dbpath /usr/local/kencery/mongoDB/mongodb/db          

g 重新打开一个连接页面,验证mongoDB是否启动,输入命令lsof -i :27017,监测端口已经在使用中,所以说启动已经完成。不要把启动页面关闭。

4.MongoDB配置

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

b 首先我们在mongoDB解压之后的包里面进行操作,执行以下命令,打开编辑器。

  [root@localhostTEST bin]# cd /usr/local/kencery/mongoDB/mongodb

   [root@localhostTEST bin]# vim bin/mongodb.conf

c 打开编辑器之后将如下图所示的内容写入到编辑器中,保证是正确的,如果你的安装地址和我的不一致,则需要自己修改路径,编辑完成之后保存。

#数据文件存放目录

dbpath =/usr/local/kencery/mongoDB/mongodb/db

#日志文件存放目录

logpath =/usr/local/kencery/mongoDB/mongodb/logs/mongodb.log

#端口

port = 27017

#以守护程序的方式启动,即在后台运行

fork = true

#日志输出方式,使用追加的方式写日志

logappend=true

#PID File 的完整路径,如果没有设置,则没有PID文件

pidfilepath=/usr/local/kencery/mongoDB/mongodb/mongo.pid

#关闭http接口,默认关闭27018端口访问

#nohttpinterface = true

#声明这是一个集群的分片,默认端口27018

shardsvr=true

#设置每个数据库将被保存在一个单独的目录

#directoryperdb=true

#开启认证

#auth=true

#设开启简单的rest API,置后打开28017网页端口

rest = true

d MongDB请命令参数说明:

Mongodb启动命令mongod参数说明_傲雪星枫的博客-CSDN博客

e 返回至 mongodb目录,使用如下命令重新启动mongoDB,看是否配置文件起作用,命令如下

./bin/mongod --config /usr/local/kencery/mongoDB/mongodb/bin/mongodb.conf

启动失败了,MongoDB已经处于启动状态,没有关闭成功,需要处理一下。

查杀mongodb进程:
[root@localhostTEST mongodb]# ps -ef | grep mongo
Kill -2 PID,不要用 kill -9 PID,只需要查杀配置文件的启动进程
[root@localhostTEST mongodb]# kill -2 9026
重新启动 MongoDB:
./bin/mongod --config /usr/local/kencery/mongoDB/mongodb/bin/mongodb.conf
 
 

验证mongoDB是否启动,输入命令lsof -i :27017,监测端口已经在使用中,所以说启动已经完成。

 
 

5.MongoDB设置为系统服务并且设置开机启动

a 通过上面简单的操作,我们已经将MongoDB配置文件配置完成,那么接下里我们将为MongoDB设置系统服务。

b.首先添加MongoDB系统服务,命令如下:

[root@localhostTEST mongodb]# vim /etc/rc.d/init.d/mongod

  c 打开编辑器后,我们将下面的配置粘贴进去,然后保存

ulimit -SHn 655350

        #!/bin/sh

        # chkconfig: - 64 36

        # description:mongod

        case $1 in

        start)

        /usr/local/kencery/mongoDB/mongodb/bin/mongod  --maxConns 20000  --config /usr/local/kencery/mongoDB/mongodb/bin/mongodb.conf

        ;;

        stop)

        /usr/local/kencery/mongoDB/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()"

        ;;

        status)

        /usr/local/kencery/mongoDB/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.stats()"

        ;;

        esac

d 保存完成之后,添加脚本执行权限,命令如下:

[root@localhostTEST mongodb]# chmod +x /etc/rc.d/init.d/mongod

      e 启动MongoDB,如下图所示,则说明启动成功

[root@localhostTEST mongodb]# service mongod start

但是直接启动发现失败了,需要先停止已经启动的mongodb进程,kill -2 pid ,后期可以用f 的命令停止服务,再启动即可。

f 可以使用命令service mongod stop关闭MongoDB服务。

[root@localhostTEST mongodb]# service mongod stop

[root@localhostTEST mongodb]# service mongod start

g 将此服务设置为开机启动,命令如下:chkconfig mongod on,然后重新启动机器进行测试,发现开机服务应启动并且端口也在使用中。

[root@localhostTEST mongodb]# chkconfig mongod on

  h 验证mongoDB是否启动,输入命令lsof -i :27017,监测端口已经在使用中,所以说启动已经完成。

6.MongoDB 后台管理 Shell

如果你需要进入 mongodb 后台管理,你需要先打开 mongodb 装目录的下的 bin 目录,然后执行 mongo 命令文件。

MongoDB Shell MongoDB 自带的交互式 Javascript shell,用来对 MongoDB 进行操作和管理的交互式环境。

当你进入 mongoDB 后台后,它默认会链接到 test 文档(数据库):

[root@localhostTEST bin]# ./mongo

MongoDB shell version: 3.2.22

connecting to: test

由于它是一个JavaScript shell,您可以运行一些简单的算术运算,退出使用exit.

> 2+2

4

> exit

bye

再次登录mongodb后台,插入一些简单的数据,并对插入的数据进行检索

[root@localhostTEST bin]# ./mongo

插入数据,检索数据(第一个命令将数字 10 插入到 runoob 集合的 x 字段中。

>  db.runoob.insert({x:10})

WriteResult({ "nInserted" : 1 })

>  db.runoob.find()

{ "_id" : ObjectId("6038a3ac15fbb0c58c47bf69"), "x" : 10 }

>

7. Navicat 12.1客户端访问mongoDB数据库

Navicat premium是一款数据库管理工具,是一个可多重连线资料库的管理工具,

它可以让你以单一程式同时连线到 MySQLSQLiteOracle PostgreSQLmongodb,让管理不同类型的资料库更加的方便。

(仅限学习使用-不可商业用途)工具下载地址:

链接:文件分享

密码:7qey2z

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值