前言
本篇博客是本人在Mac環境下安裝MongoDB結合安裝過程以及遇到的問題寫的一篇總結文章,希望對瀏覽文章的朋友有所幫助!
1.安裝的方式
在網上搜了一下MongoDB的安裝方式大致可分爲兩種:
1.使用命令安裝
2.下載安裝包
我在安裝MongoDB的過程中兩種方式都使用過,開始使用的是命令安裝,結果失敗了。於是我又採用了下載安裝包的方式進行安裝MongoDB,這種方式成功了,一下內容爲我安裝過程中所遇到的問題的總結
2.下載安裝
1.訪問MongoDB官方下載地址下載MongoDB的壓縮包
選擇對應的版本進行,然後Download下載
.tgz
壓縮包。
3.安裝步驟以及服務的啓動
1.下載完成後將其解壓,拷貝解壓後的文件夾。打開
訪達(Finder)
,按shift + command +G打開文件夾搜索框(因爲在默認情況下是看不到我要前往的目錄),在搜索框中輸入地址/usr/local
,回車前往/usr/local
文件夾,將拷貝的MongoDB文件夾粘貼到目錄下。2..配置環境變量,打開終端,輸入“open -e .bash_profile”,在打開的文件中加入
export PATH=${PATH}:/usr/local/mongodb/bin #如果於我對應的文件夾名稱不同請修改成你自己的
修改完成後,command + s 保存,關閉.bash_profile編輯窗口。然後在終端中輸入
source .bash_profile
使配置生效(注意:這個個過程最好不要使用fish模式,source文件的時候會編譯報錯)3..在終端中輸入
mongod -version
命令,回車後看到如圖所示的版本號後,則說明MongoDB安裝成功4..此時我們還不能直接啓動MongoDB服務,需要在根目錄下新建 data 文件夾,裏面再建一個 db 文件夾,安裝MongoDB時並不會自動生成,需要我們手動創建,可以在命令行輸入創建,該文件夾創建在你電腦的根目錄下
sudo mkdir -p /data/db
遇到的問題
問題1
在創建文件夾時我遇到的問題:無法在根目錄下創建文件夾,執行命令終端返回代碼如下所示(沒有權限)
mkdir: data: Read-only file system
我的解決方案:關閉本機SIP(系統完整性保護)
1.查看SIP狀態
首先終端中輸入
csrutil status
命令,如果返回System Integrity Protection status: enabled
.說明SIP處於開啓狀態。2.解決辦法
重啓電腦,按住
command + R
直至進入系統恢復界面(這個重啓的過程中請一直按直到出現系統恢復界面),然後點擊實用工具選擇終端,在終端中輸入csrutil disable
命令關閉SIP3.重新啓動電腦
4.權限獲取
電腦重啓完成後打開終端,在終端中輸入
sudo mount -uw /
獲取權限,然後就有權限在根目錄創建文件夾了5.文件夾創建好後,啓動服務端
在終端中輸入
mongod
命令,啓動服務,如果命令執行後沒有突然之間的終止,說明服務啓動成功,打開瀏覽器,輸入localhost:27017 ,會出現這樣一行文字。It looks like you are trying to access MongoDB over HTTP on the native driver port.
如果命令執行過程中被終止了,如圖所示
問題分析:操作都沒有問題,到這一步考慮創建的/data/db文件的權限
使用命令查看文件夾的權限
cd data ls -l
文件的權限如圖所示,可以看到文件夾的權限竟然是
root
,不是當前登錄的管理員權限,所以我們只需要將文件的權限修改成當前登錄的管理員權限即OK執行命令,將文件夾的權限修改成當前登錄的管理員的權限
sudo chown -R 當前登錄的管理員名稱 /data
如下圖所示
不知道當前登錄的管理員名稱,參考下圖
4.服務的關閉
要停止MongoDB的時候一定要正確的退出,不然下次再次連接數據庫會出現問題,我這裏提供我會的一種方式
1.連接mongodb服務端,終端輸入命令
mongo
你可以使用
db
查看當前所連接的數據庫 <…其他操作省略>2.使用
use admin;
和db.shutdownServer();
命令關閉服務,如下圖所示