Linux下MongoDB(3.0)的安裝和配置使用者
阿新 • • 發佈:2018-12-24
1.下載MongoDB安裝包
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1404-3.2.7.tgz
2.解壓MongoDB安裝包
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz
3.新增mongodb執行路徑
export PATH=<mongodb-install-directory>/bin:$PATH
(mongodb-install-directory為你 MongoDB 的安裝路徑)
4.建立mongodb資料庫的位置,預設的資料庫位置是/data/db,資料庫資料夾需要自己建立,不會自動生成,若需自定義資料庫位置,在執行時加上引數 –dbpath xxx
5.建立log資料夾,將MongoDB當做服務執行時,必須要指定log路徑,–logpath xxx/xxx.log
6.執行執行MongoDB命令
./mongod --dbpath /data/db --logpath /usr/local/mongodb/log/mongo.log --fork
(–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
./mongod --dbpath /data/db --logpath /usr/local/mongodb/log/mongo.log --fork --auth
(–auth表示使用許可權方式啟動MongoDB)
10.進入mongo shell,使用admin資料庫並進行驗證,如果不驗證,是做不了任何操作的。
use admin
db.auth("admin","reformerhz") #認證,返回1表示成功
11.驗證之後還是做不了操作,因為admin只有使用者管理許可權,下面建立使用者,使用者都跟著庫走,建立的使用者都是。
use keyfree
db.createUser(
{
user: "root",
pwd: "xxx",
roles: [
{ role: "readWrite", db: "your_db_name" }
]
}
)
12.之後root使用者就對your_db_name有讀寫許可權了