一、環(huán)境
Linux:CentOS 7.6 x64
MongoDB:4.0.0
MongoDB下載地址: 安裝包下載?????安裝包選擇
二、安裝
1、下載MongoDB
$ cd /usr/local/bin/ ## 目錄可以按自己需求來
$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz ## 可以去官網(wǎng)選擇自己需要的版本 這里安裝4.0.0
2、解壓縮、重命名
$ tar zxvf mongodb-linux-x86_64-4.0.0.tgz
$ mv mongodb-linux-x86_64-4.0.0 mongodb
3、配置環(huán)境變量
$ vim /etc/profile
在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 行的上面添加如下配置:
##MongoDB 環(huán)境變量
export PATH=/usr/local/bin/mongodb/bin:$PATH
4、source讓配置生效
$ cd ~
$ source /etc/profile ## 或者 . /etc/profile
5、創(chuàng)建配置文件及數(shù)據(jù)庫(kù)
$ cd /usr/local/bin/mongodb
$ touch mongodb.conf
$ mkdir db
$ mkdir log
$ cd log
$ touch mongodb.log
6、修改配置文件
$ vim /usr/local/bin/mongodb/mongodb.conf
添加如下配置:
port=27017 #端口
dbpath= /usr/local/bin/mongodb/db #數(shù)據(jù)庫(kù)存文件存放目錄
logpath= /usr/local/bin/mongodb/log/mongodb.log #日志文件存放路徑
logappend=true #使用追加的方式寫日志
fork=true #以守護(hù)進(jìn)程的方式運(yùn)行,創(chuàng)建服務(wù)器進(jìn)程
maxConns=100 #最大同時(shí)連接數(shù)
#noauth=true #不啟用驗(yàn)證 注釋掉改行 最后一行添加auth = true 連接需要認(rèn)證
journal=true #每次寫入會(huì)記錄一條操作日志(通過journal可以重新構(gòu)造出寫入的數(shù)據(jù))。
#即使宕機(jī),啟動(dòng)時(shí)wiredtiger會(huì)先將數(shù)據(jù)恢復(fù)到最近一次的checkpoint點(diǎn),然后重放后續(xù)的journal日志來恢復(fù)。
storageEngine=wiredTiger #存儲(chǔ)引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0 #這樣就可外部訪問了,例如從win10中去連虛擬機(jī)中的MongoDB
auth = true ##用戶認(rèn)證
7、設(shè)置目錄權(quán)限
$ cd /usr/local/bin/mongodb
$ chmod 777 db
$ chmod 777 log
8、添加用戶
##進(jìn)入中斷操作mongodb
$cd /usr/local/bin/mongodb/bin
## 需要先啟動(dòng)mongodb 啟動(dòng)命令看 三、服務(wù)管理
$./mongo
## 選擇數(shù)據(jù)庫(kù)
use admin
##給admin數(shù)據(jù)庫(kù)添加管理員用戶名和密碼,用戶名和密碼請(qǐng)自行設(shè)置
db.createUser({user:"username",pwd:"password",roles:["root"]})
##驗(yàn)證是否成功,返回1則代表成功
db.auth("username", "password")
##創(chuàng)建數(shù)據(jù)庫(kù)data
use data
##為data創(chuàng)建用戶,用戶名和密碼請(qǐng)自行設(shè)置。
db.createUser({user: "data_user", pwd: "data_pwd", roles: [{ role: "dbOwner", db: "data" }]})
三、管理服務(wù)
1、啟動(dòng)、關(guān)閉MongoDB
## 啟動(dòng)服務(wù) 如果配置文件配好的話直接
$ mongod --config /usr/local/bin/mongodb/mongodb.conf
## 沒配好的話就按如下啟動(dòng)
$ mongod --dbpath=/usr/local/bin/mongodb/db/ --fork --logpath=/usr/local/bin/mongodb/log/mongodb.log
## 關(guān)閉服務(wù)
$ mongod --shutdown --config /usr/local/bin/mongodb/mongodb.conf
## kill掉進(jìn)程也可以關(guān)掉服務(wù)
$ ps aux |grep mongodb
$ $ sudo kill uid ##這里的uid是 ps后的進(jìn)程id
| 參數(shù) | 說明 |
|---|---|
| --dbpath | 數(shù)據(jù)存放路徑 |
| --logpath | 日志文件路徑 |
| --logappend | 日志輸出方式 |
| --port | 啟用端口號(hào) |
| --fork | 在后臺(tái)運(yùn)行 |
| --auth | 是否需要驗(yàn)證權(quán)限登錄(用戶名和密碼) |
| --bind_ip | 限制訪問的ip |
| --shutdown | 關(guān)閉數(shù)據(jù)庫(kù) |
2、Robo 3T連接
-
配置連接
Robo 3T配置連接.jpg - 配置用戶
Robo 3T配置連接用戶.jpg
注意:阿里云服務(wù)器的話 Robo 3T 連接不上的話 看看阿里云入網(wǎng)端口 27017是否開啟
3、Navicat連接
Navicate配置連接.jpg


