一些工作總結,最近在做關於Nodejs和MongoDB的東西。當作自己複習,同時如果有同樣有不太熟練的人,希望這篇文章可以幫你節約一點時間。那麼,在這篇文章你將會看到。
- MongoDB 安裝與 Mongo Compass安裝
- MongoDB 遠端訪問配置
- 針對伺服器開放指定訪問埠
一、MongoDB 的安裝與Mongo Compass安裝
安裝和部署的環境都是在windows環境下進行的。
首先從 MongoDB 官網上獲取到 DB Server和 Compass 的安裝包 官網。
【DB Server】這個就是DB的主程式
【Tools Compass】MongoDB 官方提供的管理工具
主程式安裝部步驟比較簡單,如果不修改安裝路徑和 DB 存放路徑的話,一直點選下一步直到程式安裝完成。但通常情況下,會修改 DB 檔案的存放路徑。
Compass 安裝則不需要任何操作,雙擊啟動安裝程式後,自動完成安裝。
二、MongoDB 遠端訪問配置
遠端訪問主要就是修改MongoDB的配置檔案mongod.cfg
。檔案路徑是在安裝路徑下的bin資料夾中。我的是預設路徑安裝,所以是C:\Program Files\MongoDB\Server\4.0\bin
用編輯器開啟之後,需要修改的地方有共有兩處
1. # network interfaces
將原本的 IP 127.0.0.1
更改為 0.0.0.0
,意思是開放給所以 IP 都能訪問。可以直接在後面新增指定多個IP地址127.0.0.1,192.168.1.60
2. #security
上一步修改完成之後,其實就能共遠端訪問了。但這樣子不好的,不安全的。需要在安全這個選項中加上驗證。
這樣之後並沒有完,還需要為MongoDB新增使用者。
新增 MongoDB 使用者
新增超級管理員使用者。
其中授權資料庫為 admin
, 授權內建角色為userAdminAnyDatabase
. 角色決定對資料庫的操作許可權。 關於內建角色更詳細的資訊請防衛官網文件
db.createUser({user:'admin', pwd:'admin', roles: [{ role: "userAdminAnyDatabase", db: "admin" }]})
新增指定資料庫的使用者
db.createUser({user:'user001', pwd:'user001pass', roles: [{ role: "readWrite", db: "studentDB" }]})
到這裡,資料配置就完成了,如果沒有防火牆限制,理論上資料庫以及能夠遠端訪問了。
三、針對伺服器開放指定訪問埠
由於數伺服器的安全策略,資料庫的埠是沒有對外開發的。如MongoDB的預設埠 27017
, 在完成上述配置之後仍然無法訪問。但通常不能關閉防火牆,來解決埠問題,因此需要為伺服器開放指定的訪問埠。
步驟如下:
1. 在 控制皮膚 > 系統和安全 > Windows Defender 防火牆
找到防火牆高階設定。
2. 新增 出站 / 入站 規則。
1. 新建規則
2. 規則型別 選擇 埠
, 然後 下一步
3. 協議與埠, 選擇 TCP
, 特定埠中填寫要開放的埠。
3. 操作, 選擇 允許連線
4. 配置檔案, 可保持預設,不做任何改動
5. 名稱,新增對應的名稱與描述
然後點選完成
即可。同樣的步驟來配置 出站規則 。
規則新增成功之後,需要 重啟 計算機才能生效。