中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux上怎么安裝MongoDB

發布時間:2021-08-05 23:29:42 來源:億速云 閱讀:146 作者:chen 欄目:大數據

本篇內容介紹了“Linux上怎么安裝MongoDB”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

環境:

CentOS 7
MongoDB 3.4.9

下載MongoDB

首先去MongoDB官網下載MongoDB,地址https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.9.tgz。將下載的文件放到/opt目錄下。  

解壓

解壓下載到的tgz文件,并給文件夾重命名為mongodb,然后創建db、logs目錄分別用來存放數據和日志。如下:

Linux上怎么安裝MongoDB  

配置

進入到bin目錄下,編輯mongodb.conf文件,內容如下:

dbpath=/opt/mongodb/db
logpath=/opt/mongodb/logs/mongodb.log
port=27017
fork=true
nohttpinterface=true

執行結果如下:

Linux上怎么安裝MongoDB  

測試

做完這一切之后,我們就可以啟動MongoDB了,還是在bin目錄下,執行./mongod -f mongodb.conf命令表示啟動MongoDB,然后執行mongo命令表示表示進入到MongDB的控制臺,進入到控制臺之后,我們輸入db.version()命令,如果能顯示出當前MongoDB的版本號,說明安裝成功了。如下:

Linux上怎么安裝MongoDB  

默認情況下,連接地址是127.0.0.1:27017,連接的數據庫是test數據庫,我們也可以手動指定連接地址和連接的數據庫:

mongo 127.0.0.1:27017/admin

此時連接成功之后,輸入db命令,我們可以看到當前連接的數據庫是admin。

配置開機啟動

我們也可以配置開機啟動,編輯/etc/rc.d/rc.local文件,如下:

Linux上怎么安裝MongoDB  

配置完成之后自行關機重啟測試。

配置環境變量

每次都要進入到安裝目錄中去輸入命令,麻煩,我們直接配置環境變量即可,編輯當前用戶目錄下的.bash_profile文件,如下:

Linux上怎么安裝MongoDB  

關閉MongoDB服務

使用db.shutdownServer();命令可以關閉到MongoDB服務,但是這個命令的執行要在admin數據庫下,所以先切換到admin,再關閉服務,完整運行過程如下:

Linux上怎么安裝MongoDB  

安全管理

上面我們所做的所有的操作都沒有涉及到用戶,我們在用Oracle、MySQL或者MSSQL時都有用戶名密碼需要登錄才可以操作,MongoDB中當然也有,但是需要我們手動添加。在添加之前,我們先來說說MongoDB中用戶管理的幾個特點:

1.MongoDB中的賬號是在某一個庫里邊進行設置的,我們在哪一個庫里邊進行設置,就要在哪一個庫里邊進行驗證。
2.創建用戶時,我們需要指定用戶名、用戶密碼和用戶角色,用戶角色表示了該用戶的權限。

OK,假設我給admin數據庫創建一個用戶,方式如下:

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

user表示用戶名,pwd表示密碼,role表示角色,db表示這個用戶應用在哪個數據庫上。用戶的角色,有如下幾種:
1.Read:允許用戶讀取指定數據庫
2.readWrite:允許用戶讀寫指定數據庫
3.dbAdmin:允許用戶在指定數據庫中執行管理函數,如索引創建、刪除,查看統計或訪問system.profile
4.userAdmin:允許用戶向system.users集合寫入,可以找指定數據庫里創建、刪除和管理用戶
5.clusterAdmin:只在admin數據庫中可用,賦予用戶所有分片和復制集相關函數的管理權限
6.readAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀權限
7.readWriteAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的讀寫權限
8.userAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的userAdmin權限
9.dbAdminAnyDatabase:只在admin數據庫中可用,賦予用戶所有數據庫的dbAdmin權限
10.root:只在admin數據庫中可用。超級賬號,超級權限

用戶創建成功之后,我們關閉掉當前MongoDB服務實例,然后重新啟動新的實例,啟動方式如下:

mongod -f /opt/mongodb/bin/mongodb.conf --auth

啟動成功之后,如果我們直接執行如下命令,會提示沒有權限:

show dbs

執行結果如下:

"errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }",
"code" : 13,
"codeName" : "Unauthorized"

此時我們需要先進入到admin數據庫中,然后授權,操作如下:

use admin
db.auth("root","123")

auth方法執行結果返回1表示認證成功。然后再去執行show dbs就可以看到預期結果了。此時我再在sang庫下創建一個只讀用戶,如下:

use sang
db.createUser({user:"readuser",pwd:"123",roles:[{role:"read",db:"sang"}]})

創建成功之后,再按照上面的流程進入到sang庫中,使用readuser用戶進行認證,認證成功之后一切我們就可以在sang庫中執行查詢操作了,步驟如下:

use sang
db.auth("readuser","123")

做完這兩步之后再執行查詢操作就沒有任何問題了,但是此時如果執行插入操作會提示沒有權限,那我們可以創建一個有讀寫功能的用戶執行相應的操作,這里就不再贅述。

“Linux上怎么安裝MongoDB”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

翁牛特旗| 湄潭县| 新蔡县| 文山县| 灵台县| 邢台县| 曲阜市| 万宁市| 武夷山市| 板桥市| 德兴市| 澜沧| 石台县| 丰原市| 连云港市| 峨眉山市| 井陉县| 滦平县| 枝江市| 兴文县| 德令哈市| 环江| 屯门区| 腾冲县| 年辖:市辖区| 额济纳旗| 黄陵县| 巧家县| 饶平县| 宁陵县| 临汾市| 运城市| 济源市| 西藏| 龙里县| 华容县| 浠水县| 中西区| 湖北省| 贵德县| 安义县|