搭建MongoDB环境

安装MongoDB

1.下载安装包

MongoDB 提供了 linux 各发行版本 64 位的安装包,你可以在官网下载安装包。

下载地址:https://www.mongodb.com/download-center#community

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

Ubuntu18.04下安装配置MongoDB4.0.6 Nosql 第1张

    注意:package选择TGZ

 

2.移动目录并解压

因为我的应用程序都放在/opt目录下,所以先将压缩包移动到/opt目录下

1 sudo mv mongodb-linux-x86_64-ubuntu1804-4.0.6.tgz /opt

 进入/opt,将安装包解压缩

1 sudo tar -zxvf mongodb-linux-x86_64-ubuntu1804-4.0.6.tgz

 Ubuntu18.04下安装配置MongoDB4.0.6 Nosql 第2张

因为解压缩后名字较长,可将文件夹改名为mongodb。

1 sudo mv mongodb-linux-x86_64-ubuntu1804-4.0.6 mongodb

 

 3.创建数据库目录。

MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以你需要手动创建data目录,并在data目录中创建db目录。

进入解压缩后的mongdb文件,创建data/db目录。

sudo mkdir -p data/db

 /data/db 是 MongoDB 默认的启动的数据库路径,但可通过--dbpath指定这个目录。

 

更改data和db目录的权限,增加写权限。

1 sudo chmod 777 data
2 cd data
3 sudo chmod 777 db

 

 4.添加环境配置

打开~/.bashrc,将mongodb添加到环境变量中。

vim ~/.bashrc

Ubuntu18.04下安装配置MongoDB4.0.6 Nosql 第3张

 更新环境变量

1 source ~/.bashrc

注意:一定要更新,不然变量不生效

 

5.启动MongoDB

在mongodb中的bin目录下有这样的两个文件:mongod和mongo,mongod是服务器端,mongo是客户端。要启动mongodb服务,需要先开启mongod。

1 mongod --dbpath /opt/mongod/data/db

 Ubuntu18.04下安装配置MongoDB4.0.6 Nosql 第4张

 这样mongod就启动成功了。

 

接下来可以通过mongo命令来启动MongoDB Shell

另打开一个终端窗口,输入mongo,最后出现一个箭头表示启动成功。

Ubuntu18.04下安装配置MongoDB4.0.6 Nosql 第5张

 

6.关闭MongoDB

在mongo窗口输入以下命令即可关闭mongod服务端,然后exit即可推出。

1 use admin
2 db.shutdownServer()

 

7.配置MongoDB

 在/opt/mongodb/bin目录下新建一个配置文件mongod_config.txt

sudo vim mongod_config.txt

Ubuntu18.04下安装配置MongoDB4.0.6 Nosql 第6张

修改文件的所有者并赋予权限

1 sudo chown -R shangyang:shangyang mongod_config.txt 
2 sudo chmod 777 mongod_config.txt 

 

这样每次启动时就可通过配置文件来启动

mongod --config /opt/mongodb/bin/mongod_config.txt

 

访问MongoDB HTTP接口

MongoDB内置了一个HTTP接口,可以提供有关MongoDB服务器的信息。

HTTP接口提供了有关MongoDB服务器的状态信息,还提供了一个REST接口,可以通过REST调用来访问数据库。

但该功能只适用于 MongoDB 3.2 及之前的早期版本。

 

 

注意:

如果在启动mongod或mongo时提示not found时,请检查~/.bashrc里的环境变量是否配置正确或应用。

不要用ubuntu提供的apt install进行安装mongod-server-core和mongo-client。

通过apt install得到的版本是3.xx版,不是4.0.6。

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄