MongoDB 簡介與安裝

更新於 發佈於 閱讀時間約 4 分鐘

MongoDB 簡介

MongoDB是一種開源的NoSQL文件資料庫(Document Database),MongoDB中可以有多個Database,每個Database中可以有多個Collection,每個Collection中可以有多個Document。

若以關聯式資料庫來比喻,Collection=Table、Document=Row Record,用這樣來理解會比較好懂。

在RDBMS世界中,在儲存資料之前必須先定義好Schema,建立Table、設定好需要的欄位名稱、型別等等。而在MongoDB世界中,Collection不需要事先定義Schema,不用事先開好Collection,Collection中的每筆Document的欄位數量也是可以動態增減的,因此彈性很高。

  • Document的儲存結構是key-value pair的BSON格式,BSON是一種基於JSON的格式。


MongoDB常被使用在開發需求尚不明確的應用,因為無法預先明確定義好Schema,這種場景就很適合使用MongoDB,很適合用來快速開發,降低開發成本。

另外,MongoDB具備處理大量資料的特性,如果應用場景需要查詢大量資料(TB、PB等級以上),且資料之間不須複雜的join關聯,那也是很適合的場景。


Windows 安裝 MongoDB

官網下載區下載MongoDB Community Server版本

raw-image
raw-image
raw-image
raw-image
raw-image

選用 Run service as Network Service user 把MongoDB安裝成windows service,安裝完成後會自動啟動。

raw-image

MongoDB Compass是官方的圖形管理工具,這邊先不安裝,因為後續我會安裝Studio 3T來做GUI管理工具。

raw-image
raw-image
raw-image

安裝完成後,在工作管理員中的windows服務可以看到MongoDB服務已啟動。

raw-image

在MongoDB bin安裝目錄中下指令,確認是否安裝成功:

./mongod --version


raw-image

從windows的資源監視器可以看到MongoDB預設是使用27017 port。


安裝 Studio 3T

從官網robomongo來下載安裝:

raw-image
raw-image

打開後須先註冊登入,可以免費試用30天。

接著New Connection:

raw-image

連線後,這邊新增一個test collection來玩玩,如下圖,按右鍵Document-> Insert Document,可以新增一筆資料:

raw-image
raw-image
raw-image
raw-image
raw-image

接著,再新增一筆Document,這次只有放phone欄位:

raw-image
raw-image

可以發現,欄位是可以自由新增的,欄位名稱、內容都可以直接Edit,自由度相當高,無須預先定義欄位。


新增Database

raw-image
raw-image
raw-image



本筆記參考:
1. https://hot50773.medium.com/%E5%88%9D%E8%AD%98-mongodb-%E7%B0%A1%E4%BB%8B-57a809ef5d68
2. https://www.webcomm.com.tw/blog/mongodb/
3. https://www.gaia.net/tc/news_detail/2/134/what-is-mongodb
4. https://www.twblogs.net/a/5d1e8791bd9eee1ede06059d5. https://matthung0807.blogspot.com/2019/08/mongodb.html


留言
avatar-img
留言分享你的想法!
avatar-img
Vic Lin的沙龍
20會員
161內容數
Vic Lin的沙龍的其他內容
2023/08/13
父元件 傳遞方法使用@ <template>    ...    <Login @modalClose="modalClose"/> ... </template> <script setup>     const _modal = ref();     function m
2023/08/13
父元件 傳遞方法使用@ <template>    ...    <Login @modalClose="modalClose"/> ... </template> <script setup>     const _modal = ref();     function m
2023/03/25
前情提要 由於我的筆電已經用了10年,無法再戰下去了,且有預算考量,加上使用電腦幾乎都是定點,只有偶爾回家的時候會需要攜帶,因此最終選擇了迷你電腦,體積小不占空間,又方便攜帶,剛好符合我的需求。 菜單 由於這台無法裝獨顯,所以CPU的部分選擇 AMD R5 3400G(含Vega 11內
Thumbnail
2023/03/25
前情提要 由於我的筆電已經用了10年,無法再戰下去了,且有預算考量,加上使用電腦幾乎都是定點,只有偶爾回家的時候會需要攜帶,因此最終選擇了迷你電腦,體積小不占空間,又方便攜帶,剛好符合我的需求。 菜單 由於這台無法裝獨顯,所以CPU的部分選擇 AMD R5 3400G(含Vega 11內
Thumbnail
2023/03/10
Nuxt3中可使用useFetch來獲取數據,不須再引用axios,相當方便: 本筆記參考: https://juejin.cn/post/7104071421160063012 https://juejin.cn/post/7086472647575339045
2023/03/10
Nuxt3中可使用useFetch來獲取數據,不須再引用axios,相當方便: 本筆記參考: https://juejin.cn/post/7104071421160063012 https://juejin.cn/post/7086472647575339045
看更多
你可能也想看
Thumbnail
本篇文章將教你如何在Kubernetes cluster內部署一個MongoDB,包括取得Manifests、建立Volume、部署實務、基本操作和結論。透過操作演示,讓你瞭解在實務上如何成功建立MongoDB,並進行基本操作。
Thumbnail
本篇文章將教你如何在Kubernetes cluster內部署一個MongoDB,包括取得Manifests、建立Volume、部署實務、基本操作和結論。透過操作演示,讓你瞭解在實務上如何成功建立MongoDB,並進行基本操作。
Thumbnail
詳細解說如何在 Mac 上透過 Docker 安裝 MongoDB 社群版。包括 MongoDB Compass 的安裝與配置,以及 MongoDB Shell 的使用方法,為開發者提供 MongoDB 學習資源。
Thumbnail
詳細解說如何在 Mac 上透過 Docker 安裝 MongoDB 社群版。包括 MongoDB Compass 的安裝與配置,以及 MongoDB Shell 的使用方法,為開發者提供 MongoDB 學習資源。
Thumbnail
為了做登入log紀錄,練習mongoDB來存放log資料,這邊就來紀錄 Laravel 配置mongoDB的實作,而原本我的side project是練習搭建docker開發環境,故這邊會以dockerfile來設定跟紀錄踩坑問題。
Thumbnail
為了做登入log紀錄,練習mongoDB來存放log資料,這邊就來紀錄 Laravel 配置mongoDB的實作,而原本我的side project是練習搭建docker開發環境,故這邊會以dockerfile來設定跟紀錄踩坑問題。
Thumbnail
MySQL 應用到 URL Shortener 上
Thumbnail
MySQL 應用到 URL Shortener 上
Thumbnail
我們在「【資料庫寶典】什麼是NoSQL?能吃嗎?」有談到一些NoSQL的特性,雖然本質上有所差異,但兩方技術發展的產品也都開始互相支援了,比如說MongoDB後來也發展出類SQL語法讓熟悉SQL的開發者可以降低進入門檻,而SQL、postgresql…等也紛紛納入一些NoSQL的元素,雙方都有開始接
Thumbnail
我們在「【資料庫寶典】什麼是NoSQL?能吃嗎?」有談到一些NoSQL的特性,雖然本質上有所差異,但兩方技術發展的產品也都開始互相支援了,比如說MongoDB後來也發展出類SQL語法讓熟悉SQL的開發者可以降低進入門檻,而SQL、postgresql…等也紛紛納入一些NoSQL的元素,雙方都有開始接
Thumbnail
資料庫複制、身份驗證都有了,還能做什麼讓我們的資料更加安全呢?喔對了,還可以備份我們的資料!接下來來講匯出整個資料庫的資料來做備份 安裝 MongoDB Database Tools MongoDB 這邊有一個指令叫 mongodump 是用來匯出資料庫的資料,你可以匯出整個資料庫,也可以選擇匯出部
Thumbnail
資料庫複制、身份驗證都有了,還能做什麼讓我們的資料更加安全呢?喔對了,還可以備份我們的資料!接下來來講匯出整個資料庫的資料來做備份 安裝 MongoDB Database Tools MongoDB 這邊有一個指令叫 mongodump 是用來匯出資料庫的資料,你可以匯出整個資料庫,也可以選擇匯出部
Thumbnail
Connect database 因爲我們後端是用 django,所以我們要用 python 來操作 MongoDB,MongoDB 官方推薦的 python driver 是 pymongo,首先來安裝 在想使用的檔案內加入 myclient = pymongo.MongoClient("mong
Thumbnail
Connect database 因爲我們後端是用 django,所以我們要用 python 來操作 MongoDB,MongoDB 官方推薦的 python driver 是 pymongo,首先來安裝 在想使用的檔案內加入 myclient = pymongo.MongoClient("mong
Thumbnail
上一篇有提到 MongoDB Compass,而且也已經裝好了,那就來介紹一下吧 MongoDB Compass 是官方做的圖形介面工具用來操作架好的 MongoDB service,這樣就不用什麼事情都辛苦的用 mongo shell 操作了 New connection 輸入想要連接的 Mong
Thumbnail
上一篇有提到 MongoDB Compass,而且也已經裝好了,那就來介紹一下吧 MongoDB Compass 是官方做的圖形介面工具用來操作架好的 MongoDB service,這樣就不用什麼事情都辛苦的用 mongo shell 操作了 New connection 輸入想要連接的 Mong
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News