MongoDB - 串連執行個體說明

來源:互聯網
上載者:User

MongoDB - 串連執行個體說明
通過shell串連MongoDB服務

你可以通過執行以下命令來串連MongoDB的服務。

注意:localhost為主機名稱,這個選項是必須的:

mongodb://localhost

當你執行以上命令時,你可以看到以下輸出結果:

$ ./mongoMongoDB shell version: 3.0.6connecting to: test> mongodb://localhostmongodb://localhost...

這時候你返回查看運行 ./mongod 命令的視窗,可以看到是從哪裡串連到MongoDB的伺服器,您可以看到如下資訊:

……省略資訊……2015-09-25T17:22:27.336+0800 I CONTROL  [initandlisten] allocator: tcmalloc2015-09-25T17:22:27.336+0800 I CONTROL  [initandlisten] options: { storage: { dbPath: "/data/db" } }2015-09-25T17:22:27.350+0800 I NETWORK  [initandlisten] waiting for connections on port 270172015-09-25T17:22:36.012+0800 I NETWORK  [initandlisten] connection accepted from 127.0.0.1:37310 #1 (1 connection now open)  # 該行表明一個來自原生串連……省略資訊……

 

MongoDB串連命令格式

使用使用者名稱和密碼串連到MongoDB伺服器,你必須使用 'username:password@hostname/dbname' 格式,'username'為使用者名稱,'password' 為密碼。

使用使用者名稱和密碼串連登陸到預設資料庫:

$ ./mongoMongoDB shell version: 3.0.6connecting to: testmongodb://admin:123456@localhost/

以上命令中,使用者 admin 使用密碼 123456 串連到本地的 MongoDB 服務上。輸出結果如下所示:<、p>

> mongodb://admin:123456@localhost/...

使用使用者名稱和密碼串連登陸到指定資料庫:

串連到指定資料庫的格式如下:

mongodb://admin:123456@localhost/test

 

更多串連執行個體

串連本機資料庫伺服器,連接埠是預設的。

mongodb://localhost

使用使用者名稱fred,密碼foobar登入localhost的admin資料庫。

mongodb://fred:foobar@localhost

使用使用者名稱fred,密碼foobar登入localhost的baz資料庫。

mongodb://fred:foobar@localhost/baz

串連 replica pair, 伺服器1為example1.com伺服器2為example2。

mongodb://example1.com:27017,example2.com:27017

串連 replica set 三台伺服器 (連接埠 27017, 27018, 和27019):

mongodb://localhost,localhost:27018,localhost:27019

串連 replica set 三台伺服器, 寫入操作應用在主伺服器 並且分布查詢到從伺服器。

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

直接連接第一個伺服器,無論是replica set一部分或者主伺服器或者從伺服器。

mongodb://host1,host2,host3/?connect=direct;slaveOk=true

當你的串連伺服器有優先順序,還需要列出所有伺服器,你可以使用上述串連方式。

安全模式串連到localhost:

mongodb://localhost/?safe=true

以安全模式串連到replica set,並且等待至少兩個複製伺服器成功寫入,逾時時間設定為2秒。

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

 

參數選項說明

標準格式:

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

標準的串連格式包含了多個選項(options),如下所示:

 

選項 描述
replicaSet=name 驗證replica set的名稱。 Impliesconnect=replicaSet.
slaveOk=true|false
  • true:在connect=direct模式下,驅動會串連第一台機器,即使這台伺服器不是主。在connect=replicaSet模式下,驅動會發送所有的寫請求到主並且把讀取操作分布在其他從伺服器。
  • false: 在 connect=direct模式下,驅動會自動找尋主伺服器. 在connect=replicaSet 模式下,驅動僅僅串連主伺服器,並且所有的讀寫命令都串連到主伺服器。
safe=true|false
  • true: 在執行更新操作之後,驅動都會發送getLastError命令來確保更新成功。(還要參考 wtimeoutMS).
false: 在每次更新之後,驅動不會發送getLastError來確保更新成功。
w=n 驅動添加 { w : n } 到getLastError命令. 應用於safe=true。
wtimeoutMS=ms 驅動添加 { wtimeout : ms } 到 getlasterror 命令. 應用於 safe=true.
fsync=true|false
  • true: 驅動添加 { fsync : true } 到 getlasterror 命令.應用於 safe=true.
  • false: 驅動不會添加到getLastError命令中。
journal=true|false 如果設定為 true, 同步到 journal (在提交到資料庫前寫入到實體中). 應用於 safe=true
connectTimeoutMS=ms 可以開啟串連的時間。
socketTimeoutMS=ms 發送和接受sockets的時間。

更多MongoDB相關教程見以下內容:

CentOS 編譯安裝 MongoDB與mongoDB的php擴充

CentOS 6 使用 yum 安裝MongoDB及伺服器端配置

Ubuntu 13.04下安裝MongoDB2.4.3

MongoDB入門必讀(概念與實戰並重)

Ubunu 14.04下MongoDB的安裝指南

《MongoDB 權威指南》(MongoDB: The Definitive Guide)英文文字版[PDF]

Nagios監控MongoDB分區叢集服務實戰

基於CentOS 6.5作業系統搭建MongoDB服務

MongoDB 的詳細介紹:請點這裡
MongoDB 的:請點這裡

本文永久更新連結地址:

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.