新聞中心

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供鐘祥網(wǎng)站建設(shè)、鐘祥做網(wǎng)站、鐘祥網(wǎng)站設(shè)計(jì)、鐘祥網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、鐘祥企業(yè)網(wǎng)站模板建站服務(wù),十多年鐘祥做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
在連接 MongoDB 之前,我們需要先啟動(dòng) MongoDB,啟動(dòng) MongoDB 的方式非常簡(jiǎn)單,您只需要在 MongoDB 安裝目錄下的 bin 目錄中執(zhí)行
mongo 命令即可。mongoDB 啟動(dòng)成功后會(huì)輸出一些必要信息,然后等待建立連接,當(dāng)連接成功后,則會(huì)打印一些日志信息,如下所示:
>mongo
MongoDB shell version v4.0.10
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("8e39fa3e-030f-419c-a84c-2969db730b90") }
MongoDB server version: 4.0.10
Server has startup warnings:
2021-02-05T11:22:11.458+0800 I CONTROL [initandlisten]
2021-02-05T11:22:11.458+0800 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2021-02-05T11:22:11.458+0800 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2021-02-05T11:22:11.458+0800 I CONTROL [initandlisten]
---
Enable MongoDB's free cloud-based monitoring service, which will then receive and display
metrics about your deployment (disk utilization, CPU, operation statistics, etc).
The monitoring data will be available on a MongoDB website with a unique URL accessible to you
and anyone you share the URL with. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.
To enable free monitoring, run the following command: db.enableFreeMonitoring()
To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
---
MongoDB 的標(biāo)準(zhǔn) URI 連接語(yǔ)法如下所示:
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
語(yǔ)法說(shuō)明如下:
- mongodb://:這是固定的格式,必須要指定;
- username:password@:可選項(xiàng),如果設(shè)置,在連接數(shù)據(jù)庫(kù)服務(wù)器之后,驅(qū)動(dòng)會(huì)嘗試以給出的用戶名(username)和密碼(password)登錄這個(gè)數(shù)據(jù)庫(kù);
- host1:必填參數(shù),用來(lái)指定要連接服務(wù)器的地址,如果要連接復(fù)制集,則需要指定多個(gè)主機(jī)地址;
- portX:可選項(xiàng),用來(lái)指定端口,如果不填,默認(rèn)為 27017;
- /database:可選項(xiàng),如果指定了 username:password@,則連接并驗(yàn)證登錄指定的數(shù)據(jù)庫(kù),若不指定,則默認(rèn)打開(kāi) test 數(shù)據(jù)庫(kù);
- ?options:可選項(xiàng),用來(lái)定義連接選項(xiàng),連接選項(xiàng)的可選值如下表所示,如果不使用 /database,則前面需要使用
/與前面的內(nèi)容分隔,所有連接選項(xiàng)都是鍵值對(duì) name=value 的形式,鍵值對(duì)之間通過(guò)&或;(分號(hào))隔開(kāi)。
| 選項(xiàng) | 描述 |
|---|---|
| connect=direct | replicaset |
|
| replicaSet=name | 驗(yàn)證建立連接的 replica set 的名稱,應(yīng)用于 connect=replicaSet。 |
| slaveOk=true | false |
|
| safe=true | false |
|
| w=n | w 代表 server 的數(shù)量(應(yīng)用于 safe=true):
|
| wtimeoutMS=ms | 設(shè)置寫(xiě)操作的超時(shí)事件,應(yīng)用于 safe=true。 |
| fsync=true | false |
設(shè)置是否等待刷新數(shù)據(jù)到磁盤(pán),應(yīng)用于 safe=true。
|
| journal=true | false | 如果設(shè)置為 true,則等待數(shù)據(jù)寫(xiě)入到日志并刷新到磁盤(pán),應(yīng)用于 safe=true。 |
| connectTimeoutMS=ms | 可以打開(kāi)連接的時(shí)間。 |
| socketTimeoutMS=ms | 發(fā)送和接受 sockets 的時(shí)間。 |
下面通過(guò)一些簡(jiǎn)單的示例來(lái)演示一下:
連接到一個(gè)運(yùn)行在本機(jī)的,端口為 27017 的 MongoDB:
mongodb://localhost
連接到一個(gè)運(yùn)行在本機(jī)的,端口為 27017 的 MongoDB,并以用戶名"fred"和密碼"foobar"登錄,登錄后將默認(rèn)使用 admin 數(shù)據(jù)庫(kù):
mongodb://fred:foobar@localhost
連接到一個(gè)運(yùn)行在本機(jī)的,端口為 27017 的 MongoDB,并以用戶名"fred"和密碼"foobar"登錄,登錄后使用 baz 數(shù)據(jù)庫(kù):
mongodb://fred:foobar@localhost/baz
連接到一個(gè) replica pair,一臺(tái)服務(wù)器在 c.biancheng.net,另一臺(tái)在 www.biancheng.net:
mongodb://c.biancheng.net:27017,www.biancheng.net:27017
連接到本機(jī)的一個(gè) replica set,端口分別為 27017、27018、27019:
mongodb://localhost,localhost:27018,localhost:27019
連接 replica set 中的三臺(tái)服務(wù)器, 寫(xiě)入操作應(yīng)用在主服務(wù)器 并且分布查詢到從服務(wù)器:
mongodb://host1,host2,host3/?slaveOk=true
直接連接第一個(gè)服務(wù)器,無(wú)論該服務(wù)器是否為 replica set 的一部分,也無(wú)論它是主服務(wù)器還是從服務(wù)器:
mongodb://host1,host2,host3/?connect=direct;slaveOk=true
注意:上述的連接主要用于在您偏好使用某臺(tái)服務(wù)器,但又有可供替換的服務(wù)器時(shí)。
使用安全模式連接到 localhost:
mongodb://localhost/?safe=true
以安全模式連接到 replica set,并且等待至少兩個(gè)復(fù)制服務(wù)器成功寫(xiě)入,超時(shí)時(shí)間設(shè)置為 2 秒:
mongodb://host1,host2,host3/?safe=true;w=2;wtimeoutMS=2000
本文標(biāo)題:MongoDB連接數(shù)據(jù)庫(kù)
文章分享:http://www.5511xx.com/article/dhgjsci.html


咨詢
建站咨詢
