a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 數據庫 > MongoDB > 正文

如何使用Docker安裝一個MongoDB最新版

2020-10-29 18:40:20
字體:
來源:轉載
供稿:網友

1 安裝

本文假設大家已經安裝好了docker并能正常使用,所以不講解如何安裝docker了。用docker安裝MongoDB最新版本如下:

# 從repository查找mongo的相關鏡像,結果很多,其中第一條為官方的鏡像$ docker search mongo# 下載官方鏡像的最新版本$ docker pull mongo:latest# 完成后,檢查是否下載成功$ docker imagesREPOSITORY   TAG     IMAGE ID   CREATED    SIZEcentos    7     5e35e350aded  12 days ago   203MBmongo    latest    965553e202a4  3 weeks ago   363MBhello-world   latest    fce289e99eb9  10 months ago  1.84kB

僅需要簡單幾個命令,我們就擁有了MongoDB的最新鏡像了,后續就可以使用了。

2 啟動

完成MongoDB的鏡像下載后,啟動就非常簡單了,一個命令即可:

$ docker run -itd --name mongo -p 27017:27017 mongo --auth305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c

(1)--name后面的參數為docker容器名;

(2)-p后面是端口映射,即宿主端口:容器端口

(3)--auth是否開始鑒權,如果不想開啟可以去掉;

成功啟動MongoDB一個實例后,會返回容器ID,如305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c

通過命令docker ps可以查看正在運行的容器,經過檢查,確實已經起來了。

注意:默認數據是存在容器系統的/data/db目錄下的,如果需要使用自定義的宿主機器目錄,可以在啟動命令加上參數:

-v /my/own/datadir:/data/db

3 創建用戶與集合

3.1 進入容器

容器起來后,下一步是進入容器:

# 進入容器可以用以下兩種方法# 分別是通過容器名和容器ID$ docker exec -it mongo bash$ docker exec -it 305ebd823667 bash

上面進入容器后,其實是進入了容器的系統,并打開bash

3.2 通過客戶端命令連接數據庫

接著通過mongo命令連接到MongoDB的數據庫服務。

# 默認連接本地的27017端口的MongoDB$ mongo# 指定IP與端口進行連接$ mongo 127.0.0.1:27017# 指定用戶名和密碼連接到指定的MongoDB數據庫$ mongo 127.0.0.1:27017/admin -u user -p password

連接數據庫成功后,會返回一些信息,如SeesionID和版本號等。

3.3 查看版本

(1)在linux命令通過mongo --version查詢;

(2)連接上數據庫后,通過db.version()查詢。

root@305ebd823667:/# mongo --versionMongoDB shell version v4.2.1git version: edf6d45851c0b9ee15548f0f847df141764a317eOpenSSL version: OpenSSL 1.1.1 11 Sep 2018root@305ebd823667:/# mongo> db.version()4.2.1

3.4 創建admin管理用戶

連上數據庫后,我們先創建一個admin用戶,用以管理其它用戶:

> use adminswitched to db admin> db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]});Successfully added user: {	"user" : "admin",	"roles" : [		{			"role" : "userAdminAnyDatabase",			"db" : "admin"		}	]}> 

3.5 創建具有讀寫權限的用戶

根據業務需求,創建不用的用戶,如下面創建擁有讀寫權限的用戶user:

> db.auth('admin','123456');1> db.createUser({ user:'user',pwd:'123456',roles:[ { role:'readWrite', db: 'testdb'}]});Successfully added user: {	"user" : "user",	"roles" : [		{			"role" : "readWrite",			"db" : "testdb"		}	]}> 

3.6 認證用戶并操作

> db.auth('user','123456')1> use testdbswitched to db testdb> > db.person.insert({name:'Larry',age:18})WriteResult({ "nInserted" : 1 })> db.person.find({}){ "_id" : ObjectId("5ddaa14edbbac3c4f844366c"), "name" : "Larry", "age" : 18 }> 

4 兩款優秀的可視化工具

通過前面的操作,我們已經建立了用戶,并嘗試創建了數據庫和集合。但通過命令行來操作總是不那么方便,我們需要可視化軟件來進行操作。下面將介紹兩款優秀的可視化軟件,展示如何連接。如何進行CRUD等操作就不一一介紹了,還是比較友好的,容易使用。

4.1 Robo3T

官網

創建連接:

注意下面填的是鑒權數據庫,而不是用戶的數據庫:

操作界面:

4.2 IDEA Mongo Plugin

GitHub官網

這個是支持JetBrains全系列軟件的插件,IDEA當然也可以安裝。

連接設置:

注意下面的User Database是該用戶下的數據庫,寫錯了會連不上。

注意下面Auth Database為鑒權的數據庫,默認為admin。

操作界面:

總結

本文介紹了通過Docker安裝最新版的MongoDB,并通過例子演示了如何運行和創建用戶與集合,最后還介紹了兩款非常友好的可視化工具,希望能帶沒有接觸過的人入個門吧。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 区一区二免费视频 | 国产精选视频 | 国产精品视频一区二区三区四蜜臂 | 久久综合狠狠综合久久综合88 | 超碰97av| 日韩三级中文字幕 | 久草电影网 | 特级黄色毛片在放 | 作爱视频免费看 | 国产精品二区三区在线观看 | 中文字幕在线日韩 | 亚洲狠狠 | 亚洲精品一区二区三区蜜桃久 | 国产一二三在线 | 日本好好热视频 | 日韩不卡一区二区三区 | 中文字幕在线不卡 | 成年人视频在线免费观看 | 亚洲成人av在线 | 999精品一区 | 日韩av一区二区在线 | 欧美成a | 91视频在线看| 黑人巨大精品欧美一区二区三区 | 精品一区二区免费 | 久久综合久久受 | 噜噜噜噜噜色 | 久久一级| 国产高清一级 | 看黄网址 | 91久久精品国产91久久 | 亚洲人成中文字幕在线观看 | 91网址 | 成人精品高清 | 国产精品视频免费 | 久久精品久久久久久 | 欧美一级特黄aaaaaaa色戒 | 日本黄色一区 | 亚洲欧美电影 | 色婷婷综合久久久久中文一区二区 | 天天干天天添 |