Mongodb 參數說明及常見錯誤處理

 
  在 CentOS7 上安裝 MongoDB

1 經過 SecureCRT 鏈接至 CentOS7 服務器;linux

2 進入到 /usr/local/ 目錄:
cd /usr/localweb

3 在當前目錄下建立 tools 目錄:
mkdir -p toolsmongodb

4 進入到 tools 目錄中:
cd toolsshell

5 下載與 CentOS 系統匹配的 mongodb-linux-x86_64-rhel70-3.2.4.tgz 文件:
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.4.tgz數據庫

6 解壓縮 mongodb-linux-x86_64-rhel70-3.2.4.tgz 文件:
tar -zxvf mongodb-linux-x86_64-rhel70-3.2.4.tgz
解壓完成後獲得 mongodb-linux-x86_64-rhel70-3.2.4 文件夾及其所屬的文件;瀏覽器

7 重命名 mongodb-linux-x86_64-rhel70-3.2.4 文件爲 mongodb3.2.4:
mv mongodb-linux-x86_64-rhel70-3.2.4 mongodb3.2.4服務器

8 返回到上一級目錄,並建立 mongodb 目錄:
cd ../
mkdir -p mongodb併發

9 將 mongodb3.2.4 文件從 /usr/local/tools 目錄中移動到 /usr/local/mongodb 目錄中:
mv tools/mongodb3.2.4/ mongodb/app

10 進入到 /usr/local/mongodb/mongodb3.2.4 目錄中:
cd mongodb/mongodb3.2.4編輯器

11 在 /usr/local/mongodb/mongodb3.2.4/bin/ 目錄中建立一個存放日誌的目錄:
mkdir -p data/test/logs

12 在 /usr/local/mongodb/mongodb3.2.4/bin/ 目錄中建立一個存放數據文件的目錄:
mkdir -p data/test/db

13 進入 bin 目錄中:
cd bin/

14 建立配置文件 mongodb.conf:
vi mongodb.conf

在 mongodb.conf 寫入以下內容:
# idae - MongoDB config start - 2016-05-02

# 設置數據文件的存放目錄
dbpath = /usr/local/mongodb/mongodb3.2.4/bin/data/test/db

# 設置日誌文件的存放目錄及其日誌文件名
logpath = /usr/local/mongodb/mongodb3.2.4/bin/data/test/logs/mongodb.log

# 設置端口號(默認的端口號是 27017)
port = 27017

# 設置爲以守護進程的方式運行,即在後臺運行
fork = true

# nohttpinterface = true
nohttpinterface = true
# idae - MongoDB config end - 2016-05-02

按英文狀態下的「:wq」保存並退出;

參數解釋: 
--dbpath 數據庫路徑(數據文件)
--logpath 日誌文件路徑
--master 指定爲主機器
--slave 指定爲從機器
--source 指定主機器的IP地址
--pologSize 指定日誌文件大小不超過64M.由於resync是很是操做量大且耗時,最好經過設置一個足夠大的oplogSize來避免resync(默認的 oplog大小是空閒磁盤大小的5%)。
--logappend 日誌文件末尾添加,即便用追加的方式寫日誌
--journal 啓用日誌
--port 啓用端口號
--fork 在後臺運行
--only 指定只複製哪個數據庫
--slavedelay 指從複製檢測的時間間隔
--auth 是否須要驗證權限登陸(用戶名和密碼)
--syncdelay 數據寫入硬盤的時間(秒),0是不等待,直接寫入
--notablescan 不容許表掃描
--maxConns 最大的併發鏈接數,默認2000  
--pidfilepath 指定進程文件,不指定則不產生進程文件
--bind_ip 綁定IP,綁定後只能綁定的IP訪問服務

15 啓動 mongodb 服務:
15.1 以自定義的 mongodb 配置文件方式啓動:
./mongod --config mongodb.conf
15.2 以修復模式啓動 mongodb:
./mongod --repair -f mongodb.conf
15.3 以參數式啓動:
./mongod /usr/local/mongodb/mongodb3.2.4/bin/mongod --dbpath=/usr/local/mongodb/mongodb3.2.4/bin/data/test/db --logpath=/usr/local/mongodb/mongodb3.2.4/bin/data/test/logs/mongodb.log --fork
若是報以下錯誤:
  ERROR: child process failed, exited with error number 1
極可能是 mongodb.conf 中配置的路徑不一致問題;
若是報以下錯誤:
  ERROR: child process failed, exited with error number 100
極可能是沒有正常關閉致使的,那麼能夠刪除 mongod.lock 文件

15 查看 mongodb 進程:
ps aux |grep mongodb

16 查看 mongodb 服務的運行日誌:
tail -200f /usr/local/mongodb/mongodb3.2.4/bin/data/test/logs/mongodb.log

17 檢查端口是否已被啓動:
netstat -lanp | grep 27017

18 殺死 mongodb 進程,便可關閉 mongodb 服務:
kill -15 PID
PID 能夠經過步驟 16 查看到

19 若是出現以下狀況
warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused

能夠採用以下兩種方式解決:
18.1 若數據庫出現如上不能鏈接的緣由,多是data目錄下的mongod.lock文件問題,能夠用以下命令修復:
./bin/mongod --repair
18.2 或者直接刪除mongod.lock
rm -f /usr/local/mongodb/data/db/mongod.lock  
而後再啓動 mongodb 服務:
./mongod --config mongodb.conf
若是以上兩部依然解決不掉,則是路徑文件,咱們能夠刪除 /usr/local/mongodb/mongodb3.2.4/bin/data 目錄及其子目錄,並採用絕對路徑的方式:
./mongod /usr/local/mongodb/mongodb3.2.4/bin/mongod --dbpath=/usr/local/mongodb/mongodb3.2.4/bin/data/test/db --logpath=/usr/local/mongodb/mongodb3.2.4/bin/data/test/logs/mongodb.log --fork

20 將 mongodb 服務加入到自啓動文件中:
vi /etc/rc.local 
在文件末尾追加以下命令:
/usr/local/mongodb/mongodb3.2.4/bin/mongod --config mongodb.conf
保存並退出:
:wq!

21 客戶端經常使用命令:
db.version(); # 查看 mongodb 的版本
use test; # 進入到指定的數據中,這裏是 test 數據庫

22 在 /usr/local/mongodb/mongodb3.2.4/bin/ 目錄中,鍵入以下命令,打開一個 mongodb 的客戶端程序,即打開一個 mongodb 的 shell 客戶端,這個 shell 客戶端同時也是一個 JavaScript 編輯器,便可用輸入任何的 JavaScript 腳本:
./mongo
默認鏈接至 test 數據庫

23 在瀏覽器中輸入 IP:27017,如:
http://101.201.212.129:27017/能夠查看 MongoDB 的版本信息;

相關文章
相關標籤/搜索