標籤:
MongoDB安裝
使用的版本為3.0,虛擬機器作業系統為rhel-server-7.0-x86_64
1. 將mongodb-linux-x86_64-rhel70-3.0.11.tgz上傳並解壓到 /usr/local/mongodb 目錄下
2. 設定環境變數
# vi /etc/profile
添加export PATH=$PATH:/usr/local/mongodb/bin
# source /etc/profile
# mongo -version
MongoDB shell version: 3.0.11
Ok接下測試一下
首先建立一個目錄,MongoDB相關的資料檔案都在放在此目錄下
# mkdir /data/mongodb
MongoDB啟動
啟動MongoDB時,可以在命令列中添加參數,也能把參數寫在設定檔中
1. 參數寫在設定檔中
參數種類有很多,有關於日誌的,資料庫的,網路的,叢集的等...
詳細的參數以及說明詳見官網:https://docs.mongodb.org/manual/reference/configuration-options/
在/data/mongodb目錄下建立一個設定檔 mongo.conf
注意:縮排內容不支援tab只能用空格...
設定檔的內容為:
systemLog:
destination: file
path: "/data/mongod.log"
logAppend: true
storage:
dbPath: /data/mongodb
journal:
enabled: true
directoryPerDB: true
processManagement:
fork: true
net:
bindIp: 127.0.0.1
port: 27017
啟動mongod服務
# mongod --config /data/mongodb/mongo.conf
about to fork child process, waiting until server is ready for connections.
forked process: 3037
child process started successfully, parent exiting
服務啟動成功
# ps -aux|grep mongod
root 3037 1.8 1.6 490120 46544 ? Sl 10:28 0:00 mongod --config /data/mongodb/mongo.conf
root 3049 0.0 0.0 112640 980 pts/0 S+ 10:28 0:00 grep --color=auto mongod
串連到 mongo shell
# mongo --port 27017
MongoDB shell version: 3.0.11
connecting to: 127.0.0.1:27017/test
>
Ok啟動完畢
2. 命令列指定參數
命令列啟動就更簡單了直接輸入命令斷行符號即可
mongod --port=27017 --dbpath=/data/mongodb --logpath=/data/mongod.log --logappend --directoryperdb --fork
關於設定檔和命令列選項參數,我覺得可以把各個伺服器共用的配置寫在檔案裡,針對性的配置,放在命令列中,比較好統一管理
簡單說明一下使用到的參數:
--port:連接埠號碼
--dbpath:資料庫檔案存放路徑
--logpath:日誌存放位置
--logappend:日誌追加到檔案末尾
--directoryperdb:true 使用一個單獨的目錄為每個資料庫來儲存資料
--fork:後台運行
此外,現在的機器基本是多CPU,多記憶體塊,如果我們直接使用mongod 命令啟用會得到一個警告
WARNING: You are running on a NUMA machine.
只需要在原啟動命令前添加 numactl –interleave=all 即可,比如上面的啟動命令
# cd /usr/local/mongodb/bin/
numactl –interleave=all ./mongod --port=27017 --dbpath=/data/mongodb --logpath=/data/mongod.log --logappend --directoryperdb --fork
至於為什麼這樣啟動,我從網上找了片文章,不知道能不能徹底說明問題,可以瞭解一下
https://www.ttlsa.com/mongodb/mongodb-numa/
MongoDB安裝&啟動