Mac 環境下安裝配置mongodb並建立用戶

Mac 環境下安裝配置mongodb並建立用戶

很久以前曾經安裝過mongodb,在一個偶然的狀況下被一個大佬直接登錄進來了,剛開始驚呼還有這種操做,後來才發現本身並無給數據庫上鎖,而且在安裝完mongodb默認啓動的時候默認是任何ip均可以不須要密碼直接訪問的。
好了,廢話很少說,開始今天的正文mongodb

安裝mongodb

安裝mongodb有三種方式:數據庫

  • 直接下載安裝

MongoDB 提供了 OSX 平臺上 64 位的安裝包,你能夠在官網下載安裝包。vim

下載地址:[https://www.mongodb.com/download-center#community][1]
  • 經過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
  • 經過brew安裝

sudo brew install mongodbapp

新建日誌文件,mongodb配置文件和數據庫存放路徑

(若是如下的文件夾建立不成功或者提示沒有權限的話在命令前面加上sudo)curl

#進入mac根目錄
cd /mongoData

#新建文件夾mongoData
mkdir mongoData

#新建三個文件夾分別是db(存放數據庫數據),etc(mongodb配置文件),logs(日誌文件)
mkdir db etc logs

在etc和log下分別建立配置文件和日誌文件
cd etc
touch mongo.conf
cd logs 
touch mongo.log

接下來修改mongodb的配置文件ui

#vim編輯配置文件
vim mongo.conf

mongdb的配置文件字段有好多,我展現一下個人配置文件url

#數據庫路徑
dbpath=/mongoData/db/

#日誌輸出文件路徑
logpath=/mongoData/logs/mongo.log

#錯誤日誌採用追加模式,配置這個選項後mongodb的日誌會追加到現有的日誌文件,而不是重新建立一個新文件
logappend=true

#啓用日誌文件,默認啓用
journal=true

#這個選項能夠過濾掉一些無用的日誌信息,若須要調試使用請設置爲false
quiet=false

#是否後臺啓動,有這個參數,就能夠實現後臺運行
fork=true

#端口號 默認爲27017
port=27017

#指定存儲引擎(默認不須要指定)
#storageEngine=mmapv1

#開啓認證
auth = true

將上面的配置字段複製進去而且保存調試

啓動mongodb

#進入mongdb安裝目錄
cd /usr/local/mongodb/bin

#經過配置文件的方式啓動mongdb
./mongod -f /mongoData/etc/mongo.conf

若是出現successful就表示服務已經啓動成功日誌

配置超級用戶和用戶

#進入mongodb
./mongo

#使用admin數據庫
use admin

#查看有全部數據庫
show dbs

不出意外的話會提示沒有權限,由於咱們是以配置文件啓動的mongodb,而且配置文件中咱們開啓了認證將auth字段設置成了truecode

這個時候咱們就應該開始配置用戶

  • 建立超級管理員用戶
use admin
db.createUser({user:"admin",pwd:"password",roles:["root"]}) //admin這個數據庫是系統自帶的數據庫,他的用戶能夠訪問任何其餘數據庫的數據,也叫作超級管理員

db.auth("admin","password") // => 1 表示驗證經過 0表示驗證失敗

show dbs //=>admin   0.000GB blog    0.000GB config  0.000GB

這樣就展現出全部的數據庫了

  • 建立普通用戶(某個數據庫的用戶)
use admin //=>進入admin數據庫

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

這樣就建立了單獨關於blog這個數據庫的帳戶了,帳號是blog,密碼是password這裏咱們要注意一點,給建立普通數據庫用戶的時候要是在超級管理員驗證完以後建立

相關文章
相關標籤/搜索