前言
mongodb數(shù)據(jù)庫相信不用多介紹,大家都不陌生,好久之前曾經(jīng)安裝過mongodb,在一個偶然的情況下被一個大佬直接登陸進來了,剛開始驚呼還有這種操作,后來才發(fā)現(xiàn)自己并沒有給數(shù)據(jù)庫上鎖,并且在安裝完mongodb默認啟動的時候默認是任何ip都可以不需要密碼直接訪問的。
好了,廢話不多說,開始今天的正文
安裝mongodb
安裝mongodb有三種方式:
1、直接下載安裝
MongoDB 提供了 OSX 平臺上 64 位的安裝包,你可以在官網(wǎng)下載安裝包。
下載地址:[https://www.mongodb.com/download-center#community][1]
2、通過mac自帶的curl安裝
# 進入 /usr/local cd /usr/local # 下載 sudo curl -O https://fastdl.mongodb.org/osx/mongodb-osx-x86_64-3.4.2.tgz # 解壓 sudo tar -zxvf mongodb-osx-x86_64-3.4.2.tgz # 重命名為 mongodb 目錄 sudo mv mongodb-osx-x86_64-3.4.2 mongodb
3、通過brew安裝
sudo brew install mongodb
新建日志文件,mongodb配置文件和數(shù)據(jù)庫存放路徑
(如果以下的文件夾創(chuàng)建不成功或者提示沒有權限的話在命令前面加上sudo)
#進入mac根目錄 cd /mongoData #新建文件夾mongoData mkdir mongoData #新建三個文件夾分別是db(存放數(shù)據(jù)庫數(shù)據(jù)),etc(mongodb配置文件),logs(日志文件) mkdir db etc logs 在etc和log下分別創(chuàng)建配置文件和日志文件 cd etc touch mongo.conf cd logs touch mongo.log
接下來修改mongodb的配置文件
#vim編輯配置文件 vim mongo.conf
mongdb的配置文件字段有好多,我展示一下我的配置文件
#數(shù)據(jù)庫路徑 dbpath=/mongoData/db/ #日志輸出文件路徑 logpath=/mongoData/logs/mongo.log #錯誤日志采用追加模式,配置這個選項后mongodb的日志會追加到現(xiàn)有的日志文件,而不是從新創(chuàng)建一個新文件 logappend=true #啟用日志文件,默認啟用 journal=true #這個選項可以過濾掉一些無用的日志信息,若需要調試使用請設置為false quiet=false #是否后臺啟動,有這個參數(shù),就可以實現(xiàn)后臺運行 fork=true #端口號 默認為27017 port=27017 #指定存儲引擎(默認不需要指定) #storageEngine=mmapv1 #開啟認證 auth = true
將上面的配置字段復制進去并且保存
啟動mongodb
#進入mongdb安裝目錄 cd /usr/local/mongodb/bin #通過配置文件的方式啟動mongdb ./mongod -f /mongoData/etc/mongo.conf
如果出現(xiàn)successful就表示服務已經(jīng)啟動成功
配置超級用戶和用戶
#進入mongodb ./mongo #使用admin數(shù)據(jù)庫 use admin #查看有所有數(shù)據(jù)庫 show dbs
不出意外的話會提示沒有權限,因為我們是以配置文件啟動的mongodb,并且配置文件中我們開啟了認證將auth字段設置成了true
這個時候我們就應該開始配置用戶
創(chuàng)建超級管理員用戶
use admin db.createUser({user:"admin",pwd:"password",roles:["root"]}) //admin這個數(shù)據(jù)庫是系統(tǒng)自帶的數(shù)據(jù)庫,他的用戶可以訪問任何其他數(shù)據(jù)庫的數(shù)據(jù),也叫做超級管理員 db.auth("admin","password") // => 1 表示驗證通過 0表示驗證失敗 show dbs //=>admin 0.000GB blog 0.000GB config 0.000GB
這樣就展示出所有的數(shù)據(jù)庫了
創(chuàng)建普通用戶(某個數(shù)據(jù)庫的用戶)
use admin //=>進入admin數(shù)據(jù)庫 db.auth("admin","password") //=> 通過超級管理員驗證 use blog db.createUser({user: "blog", pwd: "password", roles: [{ role: "dbOwner", db: "blog" }]}) show dbs => admin 0.000GB blog 0.000GB config 0.000GB local 0.000GB
這樣就創(chuàng)建了單獨關于blog這個數(shù)據(jù)庫的賬戶了,賬號是blog,密碼是password
這里我們要注意一點,給創(chuàng)建普通數(shù)據(jù)庫用戶的時候要是在超級管理員驗證完之后創(chuàng)建
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。