- MongoDB進階與實戰:微服務整合、性能優化、架構管理
- 唐卓章
- 1336字
- 2021-05-19 17:44:37
第2章 體驗MongoDB
2.1 安裝MongoDB
接下來,為了快速體驗MongoDB,將介紹如何安裝MongoDB的方法。
2.1.1 Linux環境下的安裝
1.下載安裝包
訪問官方網站的下載頁面,找到對應于操作系統的版本,這里以CentOs為例,OS選擇RHEL 7.0 Linuxbit-x64版本,Package選擇TGZ格式(已編譯好的二進制包),如圖2-1所示。

圖2-1 選擇Linux版本
下載后,將得到安裝包文件mongodb-linux-x86_64-rhel70-4.0.10.tgz。
2.創建運行用戶、目錄
執行如下命令,添加dbuser用戶、dbgroup用戶組。

3.解壓、部署
將下載到的安裝包解壓后,部署到指定目錄,代碼如下:

這樣,我們就已經將MongoDB安裝到了/opt/local/mongodb這個目錄,除此之外,還建立了以下子目錄:
● conf作為配置文件目錄。
● data作為數據文件目錄。
● log作為日志文件目錄。
接下來,將部署目錄的權限授予已經創建數據庫的用戶。

通過su-命令可以將當前shell會話切換到dbuser用戶,這樣可以讓數據庫通過dbuser權限啟動。
4.數據庫配置
編輯conf/mongo.conf文件,內容如下:


配置說明見表2-1。
表2-1 配置屬性說明

5.啟動,創建數據庫賬號
執行mongod程序,啟動數據庫,代碼如下:

-f選項表示將使用配置文件啟動數據庫進程,此時,數據庫已經啟動成功,執行mongo shell,將客戶端連接到服務器,代碼如下:

創建管理員用戶,代碼如下:

創建應用數據庫用戶,代碼如下:

默認情況下,MongoDB不會啟用鑒權,此時可以執行用戶的添加操作。
最后,重啟mongod,同時啟用鑒權,代碼如下:

啟用鑒權之后,連接MongoDB的相關操作都需要提供身份認證。
6.檢查數據庫版本
進入mongo shell,執行如下命令:

至此,我們已經完成了所有步驟。
在步驟5中,創建數據庫賬號并不是必需的,但為了避免類似于“黑客贖金事件”的發生,建議讀者養成使用鑒權的好習慣。
MongoDB安裝后會包含的二進制程序,見表2-2。
表2-2 MongoDB二進制程序

2.1.2 Windows環境下的安裝
1.下載安裝文件
訪問MongoDB官方網站,找到對應當前Windows系統的安裝文件,比如Windows 64-bit x64的版本,如圖2-2所示。

圖2-2 選擇Windows版本
下載后,可以得到一個MSI文件,雙擊它便可以啟動安裝程序。
2.安裝軟件
第一步,會彈出選擇安裝模式的界面,為了更多地了解MongoDB,筆者建議選擇Custom(定制)模式。這樣可以看到具體的軟件安裝在哪里,日志、數據文件分別存放在什么目錄,還能適當地做一些修改,如圖2-3和圖2-4所示。

圖2-3 選擇安裝模式

圖2-4 定制化安裝
默認情況下,MongoDB會被安裝到C盤。建議讀者將目錄修改到一個合適的位置,如圖2-4中把MongoDB安裝到D:\MongoDB\Server\4.0這個目錄。
第二步,會提示是否選擇將MongoDB作為服務運行,為了方便管理,建議勾選上,如圖2-5所示。

圖2-5 選擇MongoDB作為服務運行
第三步,單擊“Next”按鈕,會提示是否同時安裝Compass,這是MongoDB官方提供的一款GUI工具,將在后面的章節中介紹。如果勾選了安裝則需要從網絡下載Compass軟件,當然你也可以選擇直接跳過,在以后需要時單獨下載使用。跳過這一步之后單擊“Install”按鈕,就進入了安裝過程界面,如圖2-6所示。

圖2-6 安裝MongoDB
安裝完成后,會彈出提示安裝成功的界面,單擊“確定”按鈕將其關閉。如果在前面勾選了“將MongoDB作為服務運行”這一選項,那么此時MongoDB服務會自動啟動,如圖2-7所示。

圖2-7 MongoDB進程
接下來,我們在命令行中執行mongo.exe程序來連接MongoDB服務:

輸出內容如圖2-8所示。

圖2-8 使用mongo shell連接MongoDB
3.初始化用戶
此時,我們已經能接入數據庫了。為了更好地使用數據庫,可以繼續創建對應的數據庫、用戶,并設置自己的密碼,在接入MongoDB的shell窗口中執行以下命令:


在Windows環境中安裝的一些默認選項見表2-3。
表2-3 Windows版本安裝選項

如果需要調整這些值,則可以在編輯安裝目錄中的bin\mongod.cfg文件后,重啟數據庫使其生效。
- MySQL數據庫應用與管理 第2版
- 圖解Java數據結構與算法(微課視頻版)
- The React Workshop
- 深入淺出DPDK
- Visual Basic程序設計實踐教程
- Mastering Web Application Development with AngularJS
- 從零開始:UI圖標設計與制作(第3版)
- Unity 2018 Augmented Reality Projects
- Java并發編程之美
- 多媒體技術及應用
- Mastering Machine Learning with R
- Spring Boot學習指南:構建云原生Java和Kotlin應用程序
- Managing Windows Servers with Chef
- Instant SQL Server Analysis Services 2012 Cube Security
- 匯編語言程序設計