天天看點

Ubuntu 64 位安裝Mongodb,添加資料庫使用者校驗等等

我采用官網的安裝教程,目前安裝版本《3.2.9》詳情見

 https://docs.mongodb.com/master/tutorial/install-mongodb-on-ubuntu/?_ga=1.220435160.151130367.1473556609

導入key

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927

由于我采用的16.04的版本  是以添加該源

echo"deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse"| sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

更新源

sudo apt-get update

安裝Mongodb以及相關插件

sudo apt-get install -y mongodb-org*

我沒有采用指定版本去安裝,如需要指定版本則采用

sudo apt-get install -y mongodb-org=3.2.9 mongodb-org-server=3.2.9 mongodb-org-shell=3.2.9 mongodb-org-mongos=3.2.9 mongodb-org-tools=3.2.9

将《3.2.9》改成你需要的版本号

以下是為了防止正式環境中自動更新,導緻資料出現問題,運作一下指令

echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections      

到此為止就已經安裝完成,服務的話, 現在是自動就安裝了,是以就沒貼出來。

現在需要把Mongodb 跑起來,

sudo service mongod start

運作mongod 檢視Mongodb 是否運作成功

Ubuntu 64 位安裝Mongodb,添加資料庫使用者校驗等等

如出現以上錯誤提示,是Mongodb的db路徑沒配置對,解決方案

cd /var/bin 

./mongod --dbpath /var/db/mongodb --logpath/root/mongodb/log/mongod.log

自己建立庫目錄,以及日志檔案,運作之後重新

sudo service mongod start 

不出意外的情況是跑起來了的,

也可以用

sudo service mongod status 來檢查目前服務是否成功啟動

dos 下 mongo 就進入Mongodb 控制台了。

以上是安裝Mongodb 以及成功運作

當你需要給資料庫添加資料庫使用者驗證 :

mongo

use admin --切換庫到admin

由于采用的是3.2.9版本的MongoDB 建立使用者以及賦予權限與之前的版本不同

db.createUser(  

  { user: "test",  

    pwd: "test",  

    roles: [ { role: "dbAdminAnyDatabase", db: "admin" } ]  

  }  

)

上面這個例子賦予的權限是指定庫名為“admin”的所有權限,進入其他庫好像會出問題,說驗證權限有問題。

權限可以參考:

readAnyDatabase 任何資料庫的隻讀權限(和read相似)

readWriteAnyDatabase 任何資料庫的讀寫權限(和readWrite相似)

userAdminAnyDatabase 任何資料庫使用者的管理權限(和userAdmin相似)

dbAdminAnyDatabase 任何資料庫的管理權限(dbAdmin相似)

當建立使用者之後,就需要改配置檔案了

/etc/mongod.conf

開啟權限認證:

security:

  authorization: enabled

以及:

/etc/mongodb.conf

auth = true 改行注釋去掉

注意這是兩個檔案,不是一個。

運作sudo service mongod restart  重新開機服務

驗證是否成功開啟使用者認證

mongo

show dbs

Ubuntu 64 位安裝Mongodb,添加資料庫使用者校驗等等

已經成功開啟,

切換到 “admin”庫

use admin

db.auth("test","test");

傳回值為1  表示驗證成功了

再次 show dbs

Ubuntu 64 位安裝Mongodb,添加資料庫使用者校驗等等

這個時候使用者認證已經添加完成了。

添加外網通路,有兩種方式,一種是在

cd /usr/bin/

./mongod --dbpath /var/db/mongodb --logpath /root/mongodb/log/mongod.log --fork --bind_ip aa.xx.cc.dd

該綁定ip是指你的外網ip

重新開機服務就可以了,

另外一種改配置檔案

/etc/mongod.conf

将bind_ip 加上注釋   重新開機服務就好了。

該文章純手打,如哪裡有錯誤或寫的不明白,請朋友們指點指點一二