在 CentOS7 上安裝 MongoDB
在 CentOS7 上安裝 MongoDB
1 通過 SecureCRT 串連至 CentOS7 伺服器;
2 進入到 /usr/local/ 目錄:
cd /usr/local
3 在目前的目錄下建立 tools 目錄:
mkdir -p tools
4 進入到 tools 目錄中:
cd tools
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/
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 的版本資訊;
更多MongoDB相關教程見以下內容:
CentOS 編譯安裝 MongoDB與mongoDB的php擴充
CentOS 6 使用 yum 安裝MongoDB及伺服器端配置
Ubuntu 13.04下安裝MongoDB2.4.3
MongoDB入門必讀(概念與實戰並重)
Ubunu 14.04下MongoDB的安裝指南
《MongoDB 權威指南》(MongoDB: The Definitive Guide)英文文字版[PDF]
Nagios監控MongoDB分區叢集服務實戰
基於CentOS 6.5作業系統搭建MongoDB服務
MongoDB 的詳細介紹:請點這裡
MongoDB 的:請點這裡
本文永久更新連結地址: