mongodb編譯安裝

安裝MongoDB
1、下載 

最新下載地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.4.tgz

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.8.tgz

mkdir usr/local/ mongodb

2、解壓 
tar zxvf mongodb-linux-x86_64-rhel70-3.2.8.tgz 
mv mongodb-linux-x86_64-rhel70-3.2.8 /usr/local/ 
mv mongodb-linux-x86_64-rhel70-3.2.8 mongodb 
cd mongodb/

mkdir db 
mkdir logs 
cd bin/ 
3、編輯配置文件: 
vim mongodb.conf 
輸入以下內容: 
dbpath=/usr/local/mongodb/db 
logpath=/usr/local/mongodb/logs/mongodb.log 
bind_ip=0.0.0.0 
port=27017 
fork=true 
nohttpinterface=true

4、創建新的賬號: 
groupadd mongodb 
useradd mongodb -g mongodb 
cd ../../ 
chown -R mongodb:mongodb mongodb

5、啓動: 
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf

6、設置開機自動啓動mongodb 
vi /etc/rc.d/rc.local 
/usr/local/mongodb/bin/mongod –config /usr/local/mongodb/bin/mongodb.conf

進入mongodb的shell模式: 
/usr/local/mongodb/bin/mongo 
查看數據庫列表: 
show dbs 
查看當前db版本: 
db.version();

7、增加管理員權限:

userAdminAnyDatabase 這個角色擁有分配角色和用戶的權限,但沒有查寫的缺陷 
root 這是超級管理員 
readWrite 有讀寫權限 
read 有讀權限

進入shell模式: 
/usr/local/mongodb/bin/mongo

use admin //切換到admin數據庫

db.createUser( 

user: “root”, 
pwd: “llh2018”, 
roles:[{role:”root”, db:”admin”}] 

);

db.createUser( 

user: “mongoRoot”, 
pwd: “llh2018”, 
roles:[{role:”userAdminAnyDatabase”, db:”admin”}] 

); 
驗證一下,在哪裏註冊用戶的要去哪個db裏認證: 
db.auth(“mongoRoot”, “testMongoDB2016”) 
此後可以用這個mongoRoot賬號去創建某一數據庫管理賬號: 
db.createUser({user:”llh”,pwd:”llh2018”,roles:[{“role”:”readWrite”,”db”:”admin”}]})

但發現此時增加的賬號不能在客戶端登錄,原因是mongodb版本錯了: 
先退出 mongod 服務

use admin 
db.auth(“root”, “testMongoDB2016”) 
db.shutdownServer() 
再在無認證情況下打開 mongod 
use admin 
db.dropUser(“lelaohui”) 
db.system.version.update({ “_id”:”authSchema”},{$set:{“currentVersion”:3}}) 
db.createUser({user:”lelaohui”,pwd:”123456”,roles:[{“role”:”readWrite”,”db”:”admin”}]}) 
再以認證的形式啓動mongodb

如果需要創建某一個新DB的賬號: 
需要在shell下執行: 
use TestDB 
db.createUser({user:”hhq163”,pwd:”test123456”,roles:[{“role”:”readWrite”,”db”:”TestDB”}]})

vim /usr/local/mongodb/bin/mongodb.conf 
在文件末尾增加以下這一行: 
auth=true

8、關閉數據庫服務器: 
use admin 
db.shutdownServer()

如果開戶安全認證,則要先認證: 
use admin 
db.auth(“root”, “testMongoDB2016”) 
db.shutdownServer()


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章