mongoDB
MongoDB 是一種 NoSQL(非關聯式)資料庫,採用文件導向(document-oriented)設計,適合儲存結構彈性、變動頻繁的大量資料,廣泛用於現代 Web 應用與資料驅動的系統。
✅ MongoDB Compass 安裝
MongoDB 官方提供的 GUI 工具 —— Compass,能讓你視覺化瀏覽與操作資料庫。
安裝方式
👉 下載網址:https://www.mongodb.com/try/download/compass
選擇作業系統(macOS / Windows / Linux)
點選下載並安裝
開啟 Compass 並填入連線字串,例如:
mongodb://127.0.0.1:27017
按下「Connect」,即可瀏覽本地 MongoDB
💻 MongoDB CLI 工具:mongosh
除了 GUI,也可使用 CLI 工具 mongosh
(MongoDB Shell)與資料庫互動。
安裝(macOS)
brew install mongosh
基本用法
mongosh
連線成功後會看到提示字元:
test>
接著可執行:
use mydb
db.users.insertOne({ name: "Alice", age: 30 })
db.users.find()
db.users.updateOne({ name: "Alice" }, { $set: { age: 31 } })
db.users.deleteOne({ name: "Alice" })
常用指令總覽
切換資料庫
use mydb
新增文件
db.collection.insertOne({...})
查詢資料
db.collection.find()
更新資料
db.collection.updateOne(...)
刪除資料
db.collection.deleteOne(...)
顯示所有資料庫
show dbs
顯示集合
show collections
🧠 與傳統 SQL 資料庫比較
資料結構
JSON-like 文件(BSON 格式)
表格(Table)
資料單位
文件(Document)
列(Row)
資料儲存方式
動態結構、可嵌套欄位
靜態欄位結構、正規化
語言
MongoDB 查詢語法(類似 JSON)
SQL 語法
關聯處理
較弱,透過手動 join 或 $lookup
支援 JOIN 等複雜關聯操作
可擴展性
水平擴展佳(sharding)
傳統垂直擴展為主
適合應用
即時資料、物聯網、內容管理、原型設計等
金融、ERP、結構化資料密集型系統等
📦 MongoDB 資料結構概念
Database > Collection > Document
Database:相當於 SQL 的資料庫
Collection:相當於資料表(table)
Document:一筆 JSON 資料,相當於一列(row)
文件範例
{
"name": "Alice",
"age": 30,
"email": "alice@example.com",
"address": {
"city": "Taipei",
"zip": "100"
}
}
✅ MongoDB 適合學習的對象與場景
前端/全端開發者(搭配 React、Vue、Node.js)
原型設計與快速部署專案
結構不固定、欄位動態變化的資料集
不需要大量 JOIN 或事務的系統
MongoDB 提供簡單、靈活的資料模型,是現代 Web 開發的常見選擇。搭配 Compass GUI 與 mongosh CLI,可快速上手並進行 CRUD 操作。若你習慣傳統 SQL,理解 MongoDB 的 document-based 架構將是邁向全端與雲端資料處理的重要一步。
Last updated