1. 程式人生 > 資料庫 >linux系統下MongoDB單節點安裝教程

linux系統下MongoDB單節點安裝教程

前言

MongoDB是一個高效能、開源、無模式的、基於分散式檔案儲存的文件型資料庫,相信對大家都不陌生,這裡就不過多介紹了,本文主要介紹了關於mongo單節點(linux下)的安裝教程,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的安裝過程吧。

安裝包

下載地址: (https://www.mongodb.com/download-center)

使用者許可權/目錄

1、建立 dbuser使用者

 groupadd dbgroup
 useradd dbuser -m -d /home/dbuser -g dbgroup

2、部署目錄

mkdir -p /opt/local
chown -R dbuser:dbgroup /opt/local
cd /opt/local

3、解壓安裝包

tar -xzvf mongodb-linux-x86_64-enterprise-suse11-3.2.7.tgz
mv mongodb-linux-x86_64-enterprise-suse11-3.2.7 mongodb
cd mongodb
mkdir conf data log

conf 作為配置檔案目錄 data 作為資料檔案目錄 log 作為日誌檔案目錄

配置檔案

vim conf/mongo.conf

storage:
 dbPath: "/opt/local/mongodb/data/"
 engine: wiredTiger
# directoryPerDB: true
 journal:
 enabled: true
systemLog:
 destination: file
 path: "/opt/local/mongodb/log/mongodb.log"
 logAppend: true
# timeStampFormat: iso8601-utc
operationProfiling:
 slowOpThresholdMs: 10000
replication:
 oplogSizeMB: 700
processManagement:
 fork: true
 pidFilePath: "/opt/local/mongodb/mongod.pid"
net:
 port: 27017
 http:
 enabled: false
 unixDomainSocket:
 enabled : false

其中啟動埠為27017,將http管理介面關閉; slowOpThredsholdMs是慢操作檢測的閾值,可以根據需要調整;

初始化

1、啟動mongod,預設狀態下可匿名訪問

./bin/mongod -f conf/mongodb.conf

2、連線 mongo

./bin/mongo --port 27017

3、初始化管理員

use admin
db.createUser({user:'admin',pwd:'admin@2016',roles:[{role:'clusterAdmin',db:'admin'},{role:'userAdminAnyDatabase',db:'admin'}]})

use appdb
db.createUser({user:'appuser',pwd:'appuser@2016',roles:[{role:'dbOwner',db:'appdb'}]})

4、分別建立了管理員使用者和應用賬戶,之後將

重啟 mongo,啟用鑑權

pkill mongod
./bin/mongod -f conf/mongodb.conf -auth

此後連線mongo 則需要提供身份鑑權

常用命令

啟動命令

./bin/mongod -f conf/mongodb.conf

停止命令

kill -2 `cat mongod.pid`
rm mongod.pid

檢測埠

netstat -nlp |grep 27071

檢視日誌

tail -n200 -f log/mongodb.log

連線埠

./bin/mongo --port 10001 -u admin -p admin@2016 --authenticationDatabase=admin

監控命令

./bin/mongostat --port 27071 -u admin -p admin@2016 --authenticationDatabase=admin --discover -n 30 3

總結

以上就是這篇文章的全部內容了,本文還有許多不足,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對我們的支援。