Manjaro下使用MongoDB

0.前言

由於 MongoDB 修改了軟件授權協議,官方軟件倉庫已經刪除了此軟件包,需要的用戶可以選擇安裝 mongodbmongodb-bin 軟件包。請注意從代碼編譯 mongodb 需要 ~160GB 磁盤空間,需要花費幾個小時時間。
自己編譯安裝實在是傷不起,還好有舊版本3.4的可用,小夥伴們湊合湊合得了.

1.安裝MongoDB

$ yay -S mongodb
:: There are 6 providers available for mongodb:
:: Repository AUR
    1) mongodb 2) mongodb-3.4 3) mongodb-bin 4) mongodb-bin-3.6 5) mongodb-shell-bin 6) mongodb34-bin 

Enter a number (default=1): 6

2.修改默認數據存儲路徑

MongoDB的配置文件路徑爲\etc\mongodb.conf.
裏面的內容如下:

# See http://www.mongodb.org/display/DOCS/File+Based+Configuration for format details
# 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

其中我們需要修改dbpath爲想要保存的路徑,如修改爲:

dbpath = /data/database/mongodb

注意

1. 這裏我是新劃分了一個分區,並掛載到/data路徑.

我曾經也試過將其直接掛載到~目錄下面的子目錄下,結果報了Unable to determine status of lock file in the data directory的錯誤,在網上查資料搜索得到的結果可能是因爲路徑文件的權限問題,但是也沒有解決,所以這次沒有將目錄設置在home目錄下,而是在/data路徑下新建database子目錄.
所以我的建議是不要將數據存儲路徑設置在home目錄下.

2. 如果之前有保存數據,則需要複製之前的數據到所想要存儲的路徑下

如果之前數據路徑爲/var/lib/mongodb,之後路徑爲/data/database/mongodb,則可以執行以下命令來複制數據:

sudo rsync -av /var/lib/mongodb /data/databse/

同樣的,使用cp命令也可以.

3. 如果之前有運行MongoDB,則先停止服務

sudo systemctl stop mongod.service

3.啓動服務

$ systemctl start mongodb.service

查看是否啓動成功:

sudo systemctl status mongodb

若顯示 active(running)則啓動成功!或者

cat /var/log/mongodb/mongod.log

其中最後一行爲:

[thread1] waiting for connections on port 27017

其中默認端口爲27017,在 /etc/mongodb.conf中配置,則啓動成功!

4.設置開機自啓

system enable mongodb

5.安裝Robo 3T

相比而言,robo3t算是比較好用的MongoDB可視化管理工具,所以這裏我們安裝它.

yay -S robo3t-bin

安裝完成後,打開Robo 3T界面效果如下:


6.參考

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章