在Raspberry Pi 2代和3代(Jessie版Raspbian系統)安裝MongoDB 3.0.9

編譯∕趙英傑

MongoDB是一款知名的NoSQL類型資料庫,根據DB-engines網站2016年三月的資料庫人氣排名統計,MongoDB名列第四(前三名依序為:Oracle, MySQL和Microsoft SQL Server,都是關聯式資料庫)。許多知名企業也有採用MongoDB,像eBay、GAP、Bosch(博世)、Adobe…等等。

MongoDB的官網並未提供適合Raspberry Pi的安裝程式,使用者必須花費數小時自行編譯,或者找尋他人編譯好的可執行檔(binary file),也且版本通常都比較舊。

若有興趣在Raspberry Pi 2和3自行編譯新版的MongoDB,可參考Andy Felong老兄的「在Raspberry Pi 2編譯與安裝MonogoDB 3.0.7(MongoDB 3.0.7 on Raspberry Pi 2!)」的教學文章。

下載並解壓縮樹梅派的MongoDB 3.x版可執行檔

本文摘譯自Andy Felong先生的MongoDB 3.0.9 binaries for Raspberry Pi 2 & 3 (Jessie)文章,說明在樹莓派2安裝Andy提供的MongoDB 3.0.9版的步驟。請先到此Google雲端硬碟下載core_mongodb.tar.gz(MongoDB核心)和tools_mongodb.tar.gz(MongoDB工具程式)

MongoDB可執行檔

兩個tar.gz格式的壓縮檔都下載之後,直接在壓縮檔上按滑鼠右鍵,選擇Extract To…(解壓縮到)指令,將檔案解壓縮到指定的路徑(在此假設解壓縮到「家」目錄底下的“mongoDB”目錄,若沒有此目錄,請先自行新增一個)。

解壓縮指令

或者,在終端機(Terminal)執行底下的命令,在tar.gz壓縮檔所在的目錄中,把“tools_mongodb.tar.gz”解壓縮到家目錄的“mongoDB”路徑裡面:

tar -xvzf tools_mongodb.tar.gz -C ~/mongoDB

解壓縮命令的語法格式:

tar -xvzf 壓縮檔所在路徑和檔名 -C 解壓縮目標路徑

在樹莓派2安裝MongoDB

也將core_mongodb.tar.gz解壓縮之後,透過底下的步驟安裝MongoDB:

1. 先確認Raspberry Pi的軟體是最新版:

sudo apt-get update
sudo apt-get upgrade

2. 在終端機視窗輸入底下的命令,查看是否已註冊“mongodb”使用者。

grep mongodb /etc/passwd

若系統回應類似底下的訊息,代表找到“mongodb”使用者,不需要再新增。

找到mongodb使用者的畫面

若系統沒有回應訊息,代表沒有此使用者。請輸入底下的adduser指令新增使用者“mongodb”:

sudo adduser --ingroup nogroup --shell /etc/false --disabled-password --gecos "" \
--no-create-home mongodb

3. 切換到包含mongoDB可執行檔的路徑(亦即:~/mongoDB),確認這些可執行檔的擁有者和權限,最後把這些可執行檔全都複製到“/usr/bin”路徑裡面:

cd ~/mongoDB
sudo chown root:root mongo*
sudo chmod 755 mongo*
sudo cp -p mongo* /usr/bin

4. 建立mongoDB紀錄檔的儲存目錄,並且賦予適當的使用者和權限:

sudo mkdir /var/log/mongodb
sudo chown mongodb:nogroup /var/log/mongodb

5. 建立mongoDB的資料庫存放路徑,並賦予存取權限:

sudo mkdir /var/lib/mongodb
sudo chown mongodb:root /var/lib/mongodb
sudo chmod 775 /var/lib/mongodb

5. 在/etc路徑底下,建立mongodb.conf設置檔(使用nano文字編輯器開啟):

cd /etc
sudo nano mongodb.conf

並且輸入底下的內容:

# /etc/mongodb.conf
# minimal config file (old style)
# Run mongod --help to see a list of options
bind_ip = 127.0.0.1
quiet = true
dbpath = /var/lib/mongodb
logpath = /var/log/mongodb/mongod.log
logappend = true
storageEngine = mmapv1

像這樣:

nano編輯器的畫面

按下Ctrl+O寫入檔案、再按下Ctrl+X關閉nano編輯器。

6. 最後,在系統管理員中加入mongoDB服務設置(使用nano編輯器開啟):

cd /lib/systemd/system
sudo nano mongodb.service

並且輸入底下的內容:


[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target

[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongodb.conf

[Install]
WantedBy=multi-user.target

按下Ctrl+O寫入檔案、再按下Ctrl+X關閉nano編輯器。

MongoDB安裝完畢後,你就能透過底下的命令啟動mongoDB、查看它的狀態或者關閉服務:

sudo service mongodb start # 啟動MongoDB服務

sudo service mongodb status # 查看MongoDB

sudo service mongodb stop # 關閉MongoDB服務

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *