1. 程式人生 > >linux centons 下載安裝MongoDB

linux centons 下載安裝MongoDB

MongoDB 提供了 linux 各發行版本 64 位的安裝包,你可以在官網下載安裝包。

下載完安裝包,並解壓 tgz(以下演示的是 64 位 Linux上的安裝) 。

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.0.tgz
tar -zxvf mongodb-linux-x86_64-3.6.0.tgz
mv mongodb-linux-x86_64-3.6.0 mongodb

MongoDB 的可執行檔案位於 bin 目錄下,可以把bin目錄絕對路徑新增到環境變數即可,具體過程不再敘述了


執行mongod命令來啟動mongdb服務



以上說明:

MongoDB的資料儲存在data目錄的db目錄下,但是這個目錄在安裝過程不會自動建立,所以你需要手動建立data目錄,並在data目錄中建立db目錄。

以下例項中我們將data目錄創建於根目錄下(/)。

注意:/data/db 是 MongoDB 預設的啟動的資料庫路徑(--dbpath)。

mkdir -p /data/db

注意:如果你的資料庫目錄不是/data/db,可以通過 --dbpath 來指定。

後臺啟動加 --fork


建立log目錄 及檔案 

mkdir -p /data/db/log
touch /data/db/log/mongod.log

啟動 

mongod --logpath=/data/db/log/mongod.log --logappend --fork

如果你需要進入MongoDB後臺管理,你需要先開啟mongodb裝目錄的下的bin目錄,然後執行mongo命令檔案。

MongoDB Shell是MongoDB自帶的互動式Javascript shell,用來對MongoDB進行操作和管理的互動式環境。

當你進入mongoDB後臺後,它預設會連結到 test 文件(資料庫):

 cd /usr/local/mongodb/bin
 ./mongo


也可以新建mongodb.conf配置檔案, 通過這個配置檔案進行啟動.

       vim  /etc/mongodb.conf


配置檔案引數說明:     

  mongodb的引數說明:
  
--dbpath 資料庫路徑(資料檔案)
  
--logpath 日誌檔案路徑
  
--master 指定為主機器
  
--slave 指定為從機器
  
--source 指定主機器的IP地址
  
--pologSize 指定日誌檔案大小不超過64M.因為resync是非常操作量大且耗時,最好通過設定一個足夠大的oplogSize來避免resync(預設的 oplog大小是空閒磁碟大小的5%)。
  
--logappend 日誌檔案末尾新增
  
--port 啟用埠號
  
--fork 在後臺執行
  
--only 指定只複製哪一個資料庫
  
--slavedelay 指從複製檢測的時間間隔
  
--auth 是否需要驗證許可權登入(使用者名稱和密碼)
  注:mongodb配置檔案裡面的引數很多,定製特定的需求,請參考官方文件

  配置檔案內容:

  dbpath=/data/mongodb
  logpath=/data/mongodb/log/mongodb.log
  logappend=true
  port=27017
  fork=true
  ##auth = true # 先關閉, 建立好使用者在啟動

通過配置檔案啟動服務:

       mongod --journal  -f /etc/mongodb.conf (32位系統需加引數 --journal)

       通過配置檔案關閉服務:

        mongod --journal --shutdown -f /etc/mongodb.conf

這時通過另外一臺電腦用pymongo連線mongodb時,報錯:timeout。

     ping IP 是成功的。 telnet IP 27017 的時候,提示:27017埠連線不上。


解決辦法:

      1、mongodb的配置檔案中的bind_ip 預設為127.0.0.1,預設只有本機可以連線。  此時,需要將bind_ip配置為0.0.0.0,表示接受任何IP的連線。

      2、防火牆阻止了27017埠。

      於是,先修改mongodb配置檔案,並重啟mongod服務


MongoDB可以限制只允許某一特定IP來訪問,只要在啟動時加一個引數bind_ip即可,或者在/etc/mongodb.conf中新增bind_ip配置,如下:

# 方法一  
mongod --bind_ip 127.0.0.1,10.0.133.14  
  
# 方法二  
在/etc/mongodb.conf檔案中新增以下內容:  
bind_ip = 127.0.0.1,10.0.133.14  
這樣之後,MongoDB服務端只有127.0.0.1和10.0.133.14這兩個 IP 可以訪問了。