MangoDB 101

 

背景

MangoDB之安裝

  • 將資料庫伺服器安裝在遠端機器上,這樣才能服務許多使用者,保持資料庫同步更新。

centos

  • 按照tecadmin.net的建議
    • 建立/etc/yum.repos.d/mongodb-org-6.0.repo檔案
    • 執行sudo yum install mongodb-org
    • 修改/etc/mongod.conf內之ip(數字部份、不需要前綴)
    • 啟動伺服器systemctl start mongod.service
$ ps -ef|grep mongo
kuang     5915 17786  0 13:50 pts/1    00:00:00 grep --color=auto mongo
mongod   18770     1  0 09:41 ?        00:01:34 /usr/bin/mongod -f /etc/mongod.conf

macOS

brew tap mongodb/brew
brew install mongodb-community@6.0
brew services start mongodb-community
(brew services restart mongodb/brew/mongodb-community)
brew services list
  • 新增帳密
    • mongosh 增加使用者
    • 修改/usr/local/etc/mongod.conf
    • 重新啟動服務(如無正確的帳密,使用者將無法連線、即使原來的連線,也無法新增、檢視)

本地連結之管理

  • 本地使用者需要有資料庫管理軟體來連結遠端伺服器
  • 此處以MongoDB Compass 為例
  • 可以自官網直接下載免安裝執行程式,下在後會在桌面出現圖標連結。

遠端伺服器之連結

  • 開始MongoDB Compass之後,在新連結(New Connection)對話框內加入前述ip,
  • 給予命名(如node03)、按下Connect即可。

遠端要求帳密之連結方式

新增遠端資料庫

  • 連結後會出現在遠端node03上的資料庫
  • 如範例startup_log即為伺服器啟動之紀錄,點選右邊的表格形式,可以像一般工作表顯示內容
  • 點選+號來新增一個資料庫。
    • 給定資料庫(Database)及資料表(Collection、)的名稱

  • 新增資料表可以有2格式,csv及json。以下範例以csv為例。
  • 按下import data即可選擇csv檔案,檔案格式如下說明

  • 如果格式正確,Compass會解讀其內容型態
  • 如不修改,按下Import、Done即可

CSV file requirements

  • 檔頭必須是3個欄位、名稱為name,type,description(參atlassian.com)
  • 長度不拘。
  • 輸入後同樣可以以表格型態顯示。
  • mongo是以dict語法來進行篩選或查詢,以大括弧為界,欄位和值之間必須有個冒號。如{"name":2}