背景
- MongoDB和MySQL的区别
- 是否該用 MongoDB?選擇資料庫前你該了解的事
- NoSQL是什麼?認識關聯式資料庫RDBMS和非關聯式資料庫NoSQL, ALPHA CAMP(2020)
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}