日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
MongoDB連接數(shù)據(jù)庫
在操作 MongoDB 數(shù)據(jù)庫之前我們需要先連接數(shù)據(jù)庫,您可以使用 MongoDB shell 來連接 MongoDB,也可以使用 PHP、Java 等編程語言來連接 MongoDB,本節(jié)我們主要介紹一下使用 MongoDB shell 來連接 MongoDB。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供鐘祥網(wǎng)站建設(shè)、鐘祥做網(wǎng)站、鐘祥網(wǎng)站設(shè)計(jì)、鐘祥網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(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 的方式非常簡單,您只需要在 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 連接語法如下所示:

mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

語法說明如下:

  • mongodb://:這是固定的格式,必須要指定;
  • username:password@:可選項(xiàng),如果設(shè)置,在連接數(shù)據(jù)庫服務(wù)器之后,驅(qū)動(dòng)會(huì)嘗試以給出的用戶名(username)和密碼(password)登錄這個(gè)數(shù)據(jù)庫;
  • host1:必填參數(shù),用來指定要連接服務(wù)器的地址,如果要連接復(fù)制集,則需要指定多個(gè)主機(jī)地址;
  • portX:可選項(xiàng),用來指定端口,如果不填,默認(rèn)為 27017;
  • /database:可選項(xiàng),如果指定了 username:password@,則連接并驗(yàn)證登錄指定的數(shù)據(jù)庫,若不指定,則默認(rèn)打開 test 數(shù)據(jù)庫;
  • ?options:可選項(xiàng),用來定義連接選項(xiàng),連接選項(xiàng)的可選值如下表所示,如果不使用 /database,則前面需要使用/與前面的內(nèi)容分隔,所有連接選項(xiàng)都是鍵值對(duì) name=value 的形式,鍵值對(duì)之間通過 & ;(分號(hào))隔開。

選項(xiàng) 描述
connect=direct | replicaset
  • direct:直接建立一個(gè)到服務(wù)器的連接。如果指定了多個(gè) host,將按先后順序挨個(gè)嘗試建立連接,直到連接建立成功為止。如果只指定了一個(gè) host,則 direct 為默認(rèn)值;
  • replicaset:使用 creplica set semantics 建立連接(即使只提供了一個(gè) host),指定的 host 作為種子列表來查找完整的 replica set,當(dāng)指定多個(gè) host 時(shí) replicaset 為默認(rèn)值。
replicaSet=name 驗(yàn)證建立連接的 replica set 的名稱,應(yīng)用于 connect=replicaSet。
slaveOk=true | false
  • true:在 connect=direct 模式下,驅(qū)動(dòng)會(huì)連接第一臺(tái)機(jī)器,即使這臺(tái)服務(wù)器不是主服務(wù)器。在 connect=replicaSet 模式下,驅(qū)動(dòng)會(huì)發(fā)送所有的寫請(qǐng)求到主服務(wù)器并且把讀取操作分布在其他從服務(wù)器;
  • false:在 connect=direct 模式下,驅(qū)動(dòng)會(huì)自動(dòng)尋找主服務(wù)器. 在 connect=replicaSet 模式下,驅(qū)動(dòng)僅會(huì)連接主服務(wù)器,并且所有的讀寫命令都會(huì)連接到主服務(wù)器。
safe=true | false
  • true:在執(zhí)行更新操作之后,驅(qū)動(dòng)都會(huì)發(fā)送 getLastError 命令來確保更新成功;
  • false:在每次更新之后,驅(qū)動(dòng)不會(huì)發(fā)送 getLastError 來確保更新成功。
w=n w 代表 server 的數(shù)量(應(yīng)用于 safe=true):

  • w=-1:不等待,不做異常檢查;
  • w=0:不等待,只返回網(wǎng)絡(luò)錯(cuò)誤;
  • w=1:檢查本機(jī),并檢查網(wǎng)絡(luò)錯(cuò)誤;
  • w>1:檢查 w 個(gè) server,并返回網(wǎng)絡(luò)錯(cuò)誤。
wtimeoutMS=ms 設(shè)置寫操作的超時(shí)事件,應(yīng)用于 safe=true。
fsync=true | false
設(shè)置是否等待刷新數(shù)據(jù)到磁盤,應(yīng)用于 safe=true。
journal=true | false 如果設(shè)置為 true,則等待數(shù)據(jù)寫入到日志并刷新到磁盤,應(yīng)用于 safe=true。
connectTimeoutMS=ms 可以打開連接的時(shí)間。
socketTimeoutMS=ms 發(fā)送和接受 sockets 的時(shí)間。

下面通過一些簡單的示例來演示一下:

連接到一個(gè)運(yùn)行在本機(jī)的,端口為 27017 的 MongoDB:

mongodb://localhost

連接到一個(gè)運(yùn)行在本機(jī)的,端口為 27017 的 MongoDB,并以用戶名"fred"和密碼"foobar"登錄,登錄后將默認(rèn)使用 admin 數(shù)據(jù)庫:

mongodb://fred:foobar@localhost

連接到一個(gè)運(yùn)行在本機(jī)的,端口為 27017 的 MongoDB,并以用戶名"fred"和密碼"foobar"登錄,登錄后使用 baz 數(shù)據(jù)庫:

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ù)器, 寫入操作應(yīng)用在主服務(wù)器 并且分布查詢到從服務(wù)器:

mongodb://host1,host2,host3/?slaveOk=true

直接連接第一個(gè)服務(wù)器,無論該服務(wù)器是否為 replica set 的一部分,也無論它是主服務(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ù)器成功寫入,超時(shí)時(shí)間設(shè)置為 2 秒:

mongodb://host1,host2,host3/?safe=true;w=2;wtimeoutMS=2000


網(wǎng)站題目:MongoDB連接數(shù)據(jù)庫
瀏覽地址:http://www.dlmjj.cn/article/dhgjsci.html