centos7安裝MongoDB3.4、配置用戶密碼

簡介
MongoDB 是一個介於關係數據庫和非關係數據庫之間的產品,是非關係數據庫當中功能最豐富,最像關係數據庫的。他支持的數據結構非常鬆散,是類似json的bson格式,因此可以存儲比較複雜的數據類型。Mongo最大的特點是他支持的查詢語言非常強大,其語法有點類似於面向對象的查詢語言,幾乎可以實現類似關係數據庫單表查詢的絕大部分功能,而且還支持對數據建立索引。

Packages包說明
MongoDB官方源中包含以下幾個依賴包:
mongodb-org: MongoDB元數據包,安裝時自動安裝下面四個組件包:
1.mongodb-org-server: 包含MongoDB守護進程和相關的配置和初始化腳本。
2.mongodb-org-mongos: 包含mongos的守護進程。
3.mongodb-org-shell: 包含mongo shell。
4.mongodb-org-tools: 包含MongoDB的工具: mongoimport, bsondump, mongodump, mongoexport, mongofiles, mongooplog, mongoperf, mongorestore, mongostat, and mongotop。

安裝步驟

1.配置MongoDB的yum源

創建yum源文件:
vim /etc/yum.repos.d/mongodb-org-3.4.repo
添加以下內容:
[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

這裏可以修改 gpgcheck=0, 省去gpg驗證

安裝之前先更新所有包 :yum update (可選操作)

2.安裝MongoDB
安裝命令:
yum -y install mongodb-org

 

安裝完成後

查看mongo安裝位置 whereis mongod

查看修改配置文件 : vim /etc/mongod.conf

 

3.啓動MongoDB 
啓動mongodb :systemctl start mongod.service
停止mongodb :systemctl stop mongod.service

查到mongodb的狀態:systemctl status mongod.service

4.外網訪問需要關閉防火牆:
CentOS 7.0默認使用的是firewall作爲防火牆,這裏改爲iptables防火牆。
關閉firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開機啓動

5.設置開機啓動
systemctl enable mongod.service

6.啓動Mongo shell
命令:mongo 

查看數據庫:show dbs

7.設置mongodb遠程訪問:
編輯mongod.conf註釋bindIp,並重啓mongodb.
vim /etc/mongod.conf

 

重啓mongodb:systemctl restart mongod.service

7.設置mongodb用戶:

一、超級管理員

1.> db.createUser({user:"userAdmin",pwd:"admin123456",roles:["userAdminAnyDatabase"]})

注意 : 這個上面創建一個擁有 userAdminAnyDatabase 角色,用來管理用戶的用戶,可以通過這個角色來創建、刪除用戶,這個並不能操作admin這個數據庫,我們想要操作所有數據庫的權限,此時我們可以在進行創建一個管理所有數據庫的賬號。

2.> db.createUser({user:"root",pwd:"root123",roles:[{role:"readWriteAnyDatabase",db:"admin"}]})

 使用這個命令,可以添加所有的讀寫權限,我們發現mongodb對權限分的特別細,無法賦予多個權限,而且只能再admin數據庫驗證了用戶後纔可對其他數據庫操作,所以添加了一個賬號,先驗證後,然後賦予所有數據庫讀寫權限。

二、數據庫普通賬號

1.切換到數據庫

2.添加賬號

三、開啓權限校驗

編輯/etc/mongod.conf

security:
  authorization: enabled

重啓:systemctl restart mongod.service

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