CentOS_7 MongoDb安裝使用

經過yum安裝mongodb

1、建立yum文件 vi /etc/yum.repos.d/mongodb-org-3.4.repo數據庫

而後複製下面配置,保存退出apache

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

2、yum安裝安全

yum install -y mongodb-org 安裝完畢後修改配置文件:vi /etc/mongod.conf函數

修改配置文件的 bind_ip, 默認是 127.0.0.1 修改成 0.0.0.0 容許遠程鏈接,打開防火牆url

3、基本操做命令命令行

啓動:service mongod startrest

中止:service mongod stop日誌

重啓:service mongod restartcode

查看mongoDB是否啓動成功:cat /var/log/mongodb/mongod.log;日誌文件應該會出現以下一句說明:[initandlisten] waiting for connections on port <port>

也能夠經過下面命令檢查是否啓動成功:chkconfig mongod on

4、使用

mongo
show dbs;
## 查看數據庫版本
> db.version();
## 經常使用命令幫助
> db.help();

卸載移除mongo
yum erase $(rpm -qa | grep mongodb-org)

移除數據庫文件和日誌文件
rm -r /var/log/mongodb
rm -r /var/lib/mongo

設置MongoDB密碼
輸入命令行mongo,進入mongodb環境

mongo
切換到 admin 數據庫
use admin
給admin設置用戶密碼
user: 用戶名
pwd: 用戶密碼
roles: 用來設置用戶的權限,好比讀,讀寫 等等

db.createUser({user: 'root', pwd: 'admin_mima', roles: ['root']})

驗證是否添加成功,db.auth(用戶名,用戶密碼)

db.auth('root', 'mima') 

若是返回 '1’表示驗證成功, 若是是 ‘0’ 表示驗證失敗。

剛纔是給root設置密碼,如今要給特定的每一個庫設置權限,好比demo庫
切換到demo庫

use demo

接下來爲demo庫添加一個用戶,而且賦予權限,

db.createUser({ user: 'cccc', pwd: 'demo_mima', roles: [{ role: 'readWrite', db: 'demo' }] })

這行代碼意思是 建立一個cccc用戶 給予讀寫權限 db表示該用戶操做的數據庫名。

Read:容許用戶讀取指定數據庫
readWrite:容許用戶讀寫指定數據庫
dbAdmin:容許用戶在指定數據庫中執行管理函數,如索引建立、刪除,查看統計或訪問system.profile
userAdmin:容許用戶向system.users集合寫入,能夠找指定數據庫裏建立、刪除和管理用戶
clusterAdmin:只在admin數據庫中可用,賦予用戶全部分片和複製集相關函數的管理權限。
readAnyDatabase:只在admin數據庫中可用,賦予用戶全部數據庫的讀權限
readWriteAnyDatabase:只在admin數據庫中可用,賦予用戶全部數據庫的讀寫權限
userAdminAnyDatabase:只在admin數據庫中可用,賦予用戶全部數據庫的userAdmin權限
dbAdminAnyDatabase:只在admin數據庫中可用,賦予用戶全部數據庫的dbAdmin權限。
root:只在admin數據庫中可用。超級帳號,超級權限
一切搞定,從新開機mongodb,經過增長 --auth 開啓安全登陸

mongod --auth

不過、我不使用這種方式,我經過修改mongodb的配置文件來實現
bindIp修改成 0.0.0.0 容許外網訪問
#開啓驗證
security:
  authorization: enabled //冒號後面須要空一格
重啓一下mongodb
相關文章
相關標籤/搜索