天天看點

Linux下MongoDB(3.0)的安裝和配置使用者

1.下載下傳MongoDB安裝包

(該url是ubuntu 14.04的MongoDB版本),如需其他版本:https://www.mongodb.com/download-center#community

2.解壓MongoDB安裝包

tar -zxvf mongodb-linux-x86_64-.tgz
           

3.添加mongodb執行路徑

(mongodb-install-directory為你 MongoDB 的安裝路徑)

4.建立mongodb資料庫的位置,預設的資料庫位置是/data/db,資料庫檔案夾需要自己建立,不會自動生成,若需自定義資料庫位置,在運作時加上參數 –dbpath xxx

5.建立log檔案夾,将MongoDB當做服務運作時,必須要指定log路徑,–logpath xxx/xxx.log

6.執行運作MongoDB指令

(–fork意味着将MongoDB作為服務背景啟動,此時啟動mongodb通路是不需要賬号密碼的,具體權限如下)

7.添加管理使用者(mongoDB 沒有無敵使用者root,隻有能管理使用者的使用者 userAdminAnyDatabase)

use admin
db.createUser(
  {
    user: "admin",
    pwd: "reformerhz",
    roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
  }
)
           

(添加完使用者後可以使用show users或db.system.users.find()檢視已有使用者)

8.添加完管理使用者後,關閉MongoDB,并使用權限方式再次開啟MongoDB,這裡注意不要使用kill直接去殺掉mongodb程序,(如果這樣做了,請去data/db目錄下删除mongo.lock檔案),可以使用db.shutdownServer()關閉。

9.使用權限方式啟動MongoDB

(–auth表示使用權限方式啟動MongoDB)

10.進入mongo shell,使用admin資料庫并進行驗證,如果不驗證,是做不了任何操作的。

use admin

11.驗證之後還是做不了操作,因為admin隻有使用者管理權限,下面建立使用者,使用者都跟着庫走,建立的使用者都是。

use keyfree
db.createUser(
 {
   user: "root",
   pwd: "xxx",
   roles: [
      { role: "readWrite", db: "your_db_name" }
   ]
 }
)
           

12.之後root使用者就對your_db_name有讀寫權限了