mongoDB是導(dǎo)致我重裝了3次系統(tǒng)的原因顶籽。
- 第1次玩般,懵懵懂懂,死在nginx+php-fpm的配置上礼饱,配了沒(méi)反應(yīng)坏为,不知道哪里配錯(cuò)了。
- 第2次镊绪,裝了mongodb 3.6匀伏,怎么都無(wú)法擺脫bind_ip使得本地的robo 3T可以連接遠(yuǎn)程服務(wù)器的數(shù)據(jù)庫(kù)。
- 第3次蝴韭,集成的鏡像的php版本太低够颠,裝了mongodb的php擴(kuò)展沒(méi)反應(yīng)!
1. 到官網(wǎng)下載以前的鏡像:mongodb 3.4.6
https://www.mongodb.org/dl/linux/x86_64-amazon
2. 用winscp將mongodb安裝包傳到服務(wù)器万皿,我放在usr/local/mongodb/
下摧找,解壓后重命名為sbin
cd /usr/local/mongodb/
tar -zvxf mongodb-linux-x86_64-rhel70-3.4.6.tgz
mv mongodb-linux-x86_64-rhel70-3.4.6 sbin
3. 這時(shí)候,我們cd sbin/bin
進(jìn)mongo的目錄下進(jìn)行./mongo
啟動(dòng)是不行的:
為什么呢牢硅?因?yàn)槲覀冞@樣的操作相當(dāng)于開(kāi)啟mongodb的客戶端蹬耘,但是我們還沒(méi)有開(kāi)啟mongodb服務(wù)器,有怎么能夠連得上呢减余。
4. 一次性式開(kāi)啟mongodb的服務(wù)器
cd /usr/local/mongodb/sbin/bin/
./mongod --fork --dbpath=/usr/local/mongodb/data/db --logpath /usr/local/mongodb/data/logs/mongodb.log --logappend --port 27017
ps -ef| grep mongo // 用于查看進(jìn)程综苔,查看mongo是否已經(jīng)啟動(dòng)
這時(shí)候,我們就可以啟動(dòng)mongo客戶端了:./mongo
這時(shí)候我們看見(jiàn)了很多warning,那是因?yàn)槲覀儐?dòng)mongod服務(wù)的時(shí)候沒(méi)有加 --auth
驗(yàn)證權(quán)限如筛。
下次啟動(dòng)就可以使用
./mongod --fork --dbpath=/usr/local/mongodb/data/db --logpath /usr/local/mongodb/data/logs/mongodb.log --logappend --port 27017 --auth
來(lái)避免warning了堡牡。
5. 開(kāi)機(jī)mongodb服務(wù)自啟
先到mongodb目錄下新建一個(gè)mongodb.conf
文件,我喜歡為它弄個(gè)conf
文件夾:
cd /usr/local/mongodb/
mkdir conf
vim mongodb.conf
把下面的內(nèi)容寫(xiě)進(jìn)mongodb.conf
:
dbpath=/usr/local/mongodb/data/db/
logpath=/usr/local/mongodb/data/logs/mongodb.log
logappend=true
port=27017
fork=true
# nohttpinterface=true
auth=true
logs
和db
文件夾的路徑要與自己路徑的配置好杨刨。
為了開(kāi)機(jī)自啟晤柄,我們還需要自己編寫(xiě)自定義服務(wù):
到/lib/systemd/system/
下編輯新建的mongodb.service
文件:
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/sbin/bin/mongod --config /usr/local/mongodb/conf/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/sbin/bin/mongod --shutdown --config /usr/local/mongodb/conf/mongod
b.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
然后再開(kāi)放一下權(quán)限:
cd /lib/systemd/system/
chmod 754 mongodb.service
使得:
完了之后,我們就可以用下面的命令來(lái)開(kāi)啟妖胀、關(guān)閉芥颈、設(shè)置開(kāi)機(jī)自啟mongodb服務(wù)器了:
#啟動(dòng)服務(wù)
systemctl start mongodb.service
#關(guān)閉服務(wù)
systemctl stop mongodb.service
#開(kāi)機(jī)啟動(dòng)
systemctl enable mongodb.service
最后當(dāng)然最好重啟一下服務(wù)器:
reboot
6. 還想懶一點(diǎn)兒
開(kāi)啟mongo客戶端不想要切換到mongo的目錄下。
【一次性】
輸入:
export PATH=<mongodb-install-directory>/bin:$PATH
后便可以隨地啟動(dòng)mongo客戶端赚抡。
我的:
export PATH=/usr/local/mongodb/sbin/bin:$PATH //臨時(shí)設(shè)置環(huán)境變量
mongo //啟動(dòng)
【永久】
修改/etc/profile
文件:
vim /etc/profile
拉倒最后爬坑,在倒數(shù)的:$PATH
的:$
之間,添加:
/usr/local/mongodb/sbin/bin:
保存涂臣,退出盾计,重啟。
下一篇講 使用 robo 3t遠(yuǎn)程連接 服務(wù)器的mongodb赁遗。
又想用mongodb3.6署辉,又想直接用本地圖形化界面訪問(wèn)怎么辦?
教程:官方文檔
再搭配一下:
# vim /etc/rc.local
加上一句:
/usr/bin/mongod --bind_ip_all