通過Mongo Shell連接MongoDB單節(jié)點(diǎn)實(shí)例
Mongo Shell是MongoDB自帶的數(shù)據(jù)庫管理工具,您可以將Mongo Shell工具下載并安裝至客戶端(本地服務(wù)器或ECS服務(wù)器),用于連接云數(shù)據(jù)庫MongoDB單節(jié)點(diǎn)實(shí)例。本文介紹通過Mongo Shell連接云數(shù)據(jù)庫MongoDB單節(jié)點(diǎn)實(shí)例的方法。
前提條件
已創(chuàng)建云數(shù)據(jù)庫MongoDB單節(jié)點(diǎn)實(shí)例。
背景信息
云數(shù)據(jù)庫MongoDB單節(jié)點(diǎn)實(shí)例提供的默認(rèn)數(shù)據(jù)庫admin,用于管理默認(rèn)數(shù)據(jù)庫賬號root的信息,建議使用admin之外的數(shù)據(jù)庫實(shí)現(xiàn)業(yè)務(wù)需求(即不對admin庫進(jìn)行任何操作)。
準(zhǔn)備工作
下載并安裝與云數(shù)據(jù)庫MongoDB實(shí)例數(shù)據(jù)庫版本相同的Mongo Shell工具至客戶端(本地服務(wù)器或云服務(wù)器ECS實(shí)例),下載鏈接和安裝方法,請參見MongoDB Shell Download和The mongo Shell。
如果應(yīng)用部署在ECS實(shí)例,您需要確保云數(shù)據(jù)庫MongoDB實(shí)例和ECS實(shí)例滿足以下條件,以保證網(wǎng)絡(luò)的連通性。ECS實(shí)例信息的查看方法請參見查看實(shí)例信息。
- 所在地域相同,并建議所在可用區(qū)相同(以減少網(wǎng)絡(luò)延時)。
- 網(wǎng)絡(luò)類型為專有網(wǎng)絡(luò),需確保使用相同的專有網(wǎng)絡(luò)ID。說明 如果ECS實(shí)例的網(wǎng)絡(luò)類型為經(jīng)典網(wǎng)絡(luò),您可以將ECS實(shí)例網(wǎng)絡(luò)類型轉(zhuǎn)換為專有網(wǎng)絡(luò),具體請參見ECS實(shí)例從經(jīng)典網(wǎng)絡(luò)遷移到專有網(wǎng)絡(luò)。
將客戶端IP地址添加至云數(shù)據(jù)庫MongoDB實(shí)例的白名單中,添加方法請參見設(shè)置白名單。
說明如果您需要使用公網(wǎng)地址連接云數(shù)據(jù)庫MongoDB實(shí)例,您可以手動申請公網(wǎng)地址,申請方法請參見(可選)申請公網(wǎng)連接地址。
操作步驟
登錄MongoDB管理控制臺。
在左側(cè)導(dǎo)航欄,單擊副本集實(shí)例列表。
在頁面左上角,選擇實(shí)例所在的資源組和地域。
單擊目標(biāo)實(shí)例ID或目標(biāo)實(shí)例所在行操作列的管理。
在目標(biāo)實(shí)例頁面的左側(cè)導(dǎo)航欄,單擊數(shù)據(jù)庫連接。
查看并獲取云數(shù)據(jù)庫MongoDB單節(jié)點(diǎn)實(shí)例的連接地址。
項目
說明
地址類型
私網(wǎng)連接:專有網(wǎng)絡(luò)是一種隔離的網(wǎng)絡(luò)環(huán)境,安全性和性能均高于傳統(tǒng)的經(jīng)典網(wǎng)絡(luò)。 云數(shù)據(jù)庫MongoDB實(shí)例默認(rèn)提供專有網(wǎng)絡(luò)連接地址,通過專有網(wǎng)絡(luò)連接云數(shù)據(jù)庫MongoDB單節(jié)點(diǎn)實(shí)例可以獲取更高的安全性和性能。
公網(wǎng)連接:由于通過公網(wǎng)連接實(shí)例存在一定的安全風(fēng)險,云數(shù)據(jù)庫MongoDB實(shí)例默認(rèn)未提供公網(wǎng)連接地址。如果您要使用公網(wǎng)地址連接云數(shù)據(jù)庫MongoDB實(shí)例,您可以手動申請公網(wǎng)連接地址,申請方法請參見(可選)申請公網(wǎng)連接地址。
Primary
格式:
<host>:<port>
參數(shù)說明:
<host>
:節(jié)點(diǎn)的域名信息。<port>
:節(jié)點(diǎn)的端口。
示例:
dds-bp1ea17b41abecf43****.mongodb.rds.aliyuncs.com:3717
ConnectionStringURI
格式:
mongodb://<username>:<password>@<host>:<port>/<database>[?&authSource=<authenticationDatabase>]
參數(shù)說明:
<username>
:數(shù)據(jù)庫賬號的名稱,默認(rèn)為root。<password>
:數(shù)據(jù)庫賬號的密碼。<host>
:節(jié)點(diǎn)的域名信息。<port>
:節(jié)點(diǎn)的端口。<database>
:要訪問的數(shù)據(jù)庫名稱,默認(rèn)為admin。authSource=<authenticationDatabase>
(可選):該參數(shù)用于指定數(shù)據(jù)庫賬號所屬的數(shù)據(jù)庫。<authenticationDatabase>
為鑒權(quán)數(shù)據(jù)庫名稱。如果不配置該參數(shù),<database>
會作為鑒權(quán)數(shù)據(jù)庫。重要數(shù)據(jù)庫賬號必須在所屬的數(shù)據(jù)庫下進(jìn)行鑒權(quán),才能鑒權(quán)成功。
示例:
數(shù)據(jù)庫賬號為test,所屬數(shù)據(jù)庫為admin。
mongodb://test:****@dds-bp1ea17b41abecf43****.mongodb.rds.aliyuncs.com:3717/admin
執(zhí)行如下命令,在安裝有MongoDB的客戶端(本地服務(wù)器或ECS服務(wù)器)上連接云數(shù)據(jù)庫MongoDB單節(jié)點(diǎn)實(shí)例。
mongo --host <host> --port <port> -u <username> -p --authenticationDatabase <authenticationDatabase>
參數(shù)說明:
<host>
:節(jié)點(diǎn)的域名信息。<port>
:節(jié)點(diǎn)的端口。<username>
:數(shù)據(jù)庫賬號的名稱,默認(rèn)為root。<authenticationDatabase>
:鑒權(quán)數(shù)據(jù)庫名稱,用于指定數(shù)據(jù)庫賬號所屬的數(shù)據(jù)庫。當(dāng)數(shù)據(jù)庫賬號為root時,對應(yīng)的數(shù)據(jù)庫為admin。如果您希望指定其他數(shù)據(jù)庫,請先在該數(shù)據(jù)庫中使用db.createUser()命令創(chuàng)建賬號,然后再使用該賬號進(jìn)行連接。重要數(shù)據(jù)庫賬號必須在所屬的數(shù)據(jù)庫下進(jìn)行鑒權(quán),才能鑒權(quán)成功。
示例:
數(shù)據(jù)庫賬號為test,所屬數(shù)據(jù)庫為admin。
mongo --host dds-bp1ea17b41abecf43****.mongodb.rds.aliyuncs.com --port 3717 -u test -p --authenticationDatabase admin
回顯如下信息,輸入數(shù)據(jù)庫賬號對應(yīng)的密碼并按Enter。
Enter password:<password>
參數(shù)說明:
<password>
為單節(jié)點(diǎn)實(shí)例數(shù)據(jù)庫賬號的密碼。輸入密碼時,密碼不可見。回顯如下類似信息,說明連接成功。
說明使用不同版本的Mongo Shell連接實(shí)例后回顯信息不同,請以實(shí)際情況為準(zhǔn)。
connecting to: mongodb://dds-bp1ea17b41abecf43****.mongodb.rds.aliyuncs.com:3717/ MongoDB server version: 3.4.6 Welcome to the MongoDB shell.
實(shí)例連接成功后,建議您使用admin之外的數(shù)據(jù)庫實(shí)現(xiàn)業(yè)務(wù)需求。