1、下載源碼包
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.12.tgz
2、解壓 放到 /usr/local/ 目錄下
tar -zxvf mongodb-linux-x86_64-3.2.12.tgz
mv mongodb-linux-x86_64-3.2.12/ /usr/local/mongodb
3、切換目錄
cd /usr/local/mongodb
4、在當前路徑【/usr/local/mongodb】下創建文件夾
mkdir -p ./data/db mkdir ./logs
5、進入/usr/local/mongodb/bin 目錄下,創建配置文件
vi mongodb.conf
寫入一下配置字段
dbpath = /usr/local/mongodb/data/db #數據文件存放目錄 logpath = /usr/local/mongodb/logs/mongodb.log #日志文件存放目錄 port = 27017 #端口 fork = true #以守護程序的方式啟用,即在后台運行 nohttpinterface = true auth=true #【建議練習條件下為false 認證字段】 bind_ip=0.0.0.0
mongodb.conf 參數解釋:
--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訪問服務
6、進行環境變量配置, 打開配置文件 /etc/profile
vi /etc/profile
在后面添加一條語句
添加這條語句:export PATH=$PATH:/usr/local/mongodb/bin
7、配置文件生效
source /etc/profile
8、服務啟動語句 : 以自定義的 mongodb 配置文件方式啟動
mongod -f /usr/local/mongodb/bin/mongodb.conf
以修復模式啟動 mongodb:
./mongod --repair -f mongodb.conf
以參數式啟動:
./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 文件
如果出現如下情況
warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
可以采用如下兩種方式解決:
若數據庫出現如上不能連接的原因,可能是data目錄下的mongod.lock文件問題,可以用如下命令修復:
./bin/mongod --repair
或者直接刪除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
9、服務關閉語句
mongod -f /usr/local/mongodb/bin/mongodb.conf --shutdown
檢查端口是否已被啟動:
netstat -lanp | grep 27017
查看 mongodb 進程:
ps aux |grep mongodb
10、進入客戶端界面的命令
mongo
11、設置自啟動步驟
將 mongodb 服務加入到自啟動文件中:
vi /etc/rc.local
在文件末尾追加如下命令:
/usr/local/mongodb/mongodb3.2.4/bin/mongod --config mongodb.conf
客戶端常用命令:
db.version(); # 查看 mongodb 的版本
use test; # 進入到指定的數據中,這里是 test 數據庫
在瀏覽器中輸入 IP:27017,如:
http://101.201.212.129:27017/
可以查看 MongoDB 的版本信息;
查看所有開機啟動的服務
systemctl list-units --type=service