Latest web development tutorials
×

MongoDB หลักสูตร

MongoDB หลักสูตร NoSQL แนะนำโดยย่อ MongoDB แนะนำโดยย่อ Window ติดตั้ง MongoDB Linux ติดตั้ง MongoDB MongoDB การแปลความหมายของแนวคิด MongoDB สัมพันธ์ MongoDB การสร้างฐานข้อมูล MongoDB ลบฐานข้อมูล MongoDB แทรกเอกสาร MongoDB การปรับปรุงเอกสาร MongoDB การลบเอกสาร MongoDB เอกสารแบบสอบถาม MongoDB ผู้ประกอบการที่มีเงื่อนไข MongoDB $type ผู้ประกอบการ MongoDB Limit & Skip MongoDB ลำดับ MongoDB ดัชนี MongoDB การรวมตัว MongoDB สำเนา MongoDB ชิ้น MongoDB สำรองและกู้คืน MongoDB หน้าจอ MongoDB Java MongoDB PHP กระจาย MongoDB PHP MongoDB PHP7

MongoDB การสอนที่ทันสมัย

MongoDB ความสัมพันธ์ MongoDB อ้างอิงฐานข้อมูล MongoDB ครอบคลุมแบบสอบถามดัชนี MongoDB การวิเคราะห์แบบสอบถาม MongoDB การดำเนินงานของอะตอม MongoDB การจัดทำดัชนีขั้นสูง MongoDB ข้อ จำกัด ของดัชนี MongoDB ObjectId MongoDB Map Reduce MongoDB ค้นหาข้อความเต็ม MongoDB นิพจน์ปกติ MongoDB เครื่องมือการจัดการ MongoDB GridFS MongoDB ชุดถาวร MongoDB การเจริญเติบโตอัตโนมัติ

การเชื่อมต่อ MongoDB

ในการกวดวิชานี้เราจะหารือการเชื่อมต่อที่แตกต่างกันสำหรับ MongoDB


เริ่มบริการ MongoDB

ในการกวดวิชาก่อนหน้านี้เราได้กล่าวถึง วิธีการที่จะเริ่มต้นเซิร์ฟเวอร์ MongoDB บริการคุณจะต้องดำเนินการ 'mongod สามารถอยู่ในไดเรกทอรี bin ไดเรกทอรีการติดตั้ง MongoDB

หลังจากการดำเนินการเริ่มต้นการส่งออก MongoDB หลังจากที่ข้อมูลที่จำเป็นบางส่วนจะส่งออกไม่ได้ข้อมูลใด ๆ แล้วรอสำหรับการเชื่อมต่อจะจัดตั้งขึ้นเมื่อการเชื่อมต่อจะจัดตั้งขึ้นก็จะเริ่มต้นข้อมูลบันทึกการพิมพ์

คุณสามารถใช้เปลือก MongoDB MongoDB ในการเชื่อมต่อไปยังเซิร์ฟเวอร์ นอกจากนี้คุณยังสามารถใช้ PHP ในการเชื่อมต่อกับ MongoDB กวดวิชานี้เราจะใช้ในการเชื่อมต่อกับบริการ MongoDB เปลือก MongoDB ภายหลังบทที่เราจะอธิบายวิธีการเชื่อมต่อกับบริการ MongoDB ผ่าน PHP



บริการเชื่อมต่อ MongoDB ผ่านเปลือก

คุณสามารถเชื่อมต่อบริการ MongoDB โดยการดำเนินการคำสั่งต่อไป

หมายเหตุ: localhost เป็นชื่อโฮสต์ตัวเลือกนี้จะต้อง:

MongoDB: // localhost

เมื่อคุณรันคำสั่งข้างต้นคุณสามารถเห็นผลลัพธ์ต่อไปนี้:

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

เวลานี้คุณกลับมาตรวจสอบหน้าต่างคำสั่ง Run ./mongod จากที่คุณสามารถดูการเชื่อมต่อไปยังเซิร์ฟเวอร์ MongoDB คุณสามารถดูข้อมูลต่อไปนี้:

……省略信息……
2015-09-25T17:22:27.336+0800 I CONTROL  [initandlisten] allocator: tcmalloc
2015-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 27017
2015-09-25T17:22:36.012+0800 I NETWORK  [initandlisten] connection accepted from 127.0.0.1:37310 #1 (1 connection now open)  # 该行表明一个来自本机的连接

……省略信息……


การเชื่อมต่อ MongoDB ไวยากรณ์

โดยใช้ชื่อผู้ใช้และรหัสผ่านเพื่อเชื่อมต่อกับเซิร์ฟเวอร์ MongoDB คุณต้องใช้ 'ชื่อผู้ใช้: รหัสผ่าน @ ชื่อโฮสต์ / dbname ' รูปแบบ 'ชื่อผู้ใช้' ชื่อผู้ใช้ password 'เป็นรหัสผ่าน

ชื่อเข้าสู่ระบบของผู้ใช้และรหัสผ่านเพื่อเชื่อมต่อกับฐานข้อมูลเริ่มต้น:

$ ./mongo
MongoDB shell version: 3.0.6
connecting to: test
mongodb://admin:123456@localhost/

คำสั่งดังกล่าวที่ผู้ใช้รหัสผ่านผู้ดูแล 123456 เพื่อเชื่อมต่อกับบริการ MongoDB ท้องถิ่น การส่งออกจะเป็นดังนี้: <p>

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

ชื่อเข้าสู่ระบบผู้ใช้และรหัสผ่านเพื่อเชื่อมต่อกับฐานข้อมูลที่ระบุ:

เชื่อมต่อกับฐานข้อมูลที่ระบุในรูปแบบดังต่อไปนี้:

MongoDB: // ผู้ดูแลระบบ: 123456 @ localhost / ทดสอบ


ตัวอย่างของการเชื่อมต่อ

เชื่อมต่อกับเซิร์ฟเวอร์ฐานข้อมูลท้องถิ่นพอร์ตเป็นค่าเริ่มต้น

MongoDB: // localhost

ชื่อผู้ใช้: เฟร็ด foobar รหัสผ่านเข้าสู่ระบบฐานข้อมูล localhost ผู้ดูแลระบบ

MongoDB: // เฟร็ด: foobar @ localhost

ชื่อผู้ใช้: เฟร็ดรหัสผ่านเข้าสู่ระบบ foobar localhost Baz ของฐานข้อมูล

MongoDB: // เฟร็ด: foobar @ localhost / Baz

การเชื่อมต่อแบบจำลองคู่เซิร์ฟเวอร์ 1 เซิร์ฟเวอร์ example1.com 2 example2

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

เชื่อมต่อชุดแบบจำลองสามเซิร์ฟเวอร์ (พอร์ต 27017, 27018 และ 27019):

MongoDB: // localhost, localhost: 27018, localhost: 27019

เชื่อมต่อชุดแบบจำลองสามเซิร์ฟเวอร์เขียนไว้ในเซิร์ฟเวอร์โปรแกรมหลักและกระจายแบบสอบถามไปยังเซิร์ฟเวอร์

MongoDB: // host1, host2, host3 / slaveOk = จริงหรือไม่?

การเชื่อมต่อโดยตรงไปยังเซิร์ฟเวอร์แรกไม่ว่าจะเป็นส่วนหนึ่งของชุดแบบจำลองหรือเซิร์ฟเวอร์หลักหรือจากเซิร์ฟเวอร์

MongoDB: // host1, host2, host3 / การเชื่อมต่อโดยตรง =; = slaveOk จริงหรือไม่?

เมื่อคุณเชื่อมต่อกับเซิร์ฟเวอร์ที่มีความสำคัญ แต่ยังต้องรายการเซิร์ฟเวอร์ทั้งหมดคุณสามารถใช้โหมดการเชื่อมต่อ

Safe Mode เพื่อเชื่อมต่อกับ localhost:

MongoDB :? // localhost / ปลอดภัย = true

Safe Mode เชื่อมต่อกับชุดแบบจำลองและรออย่างน้อยสองเขียนเซิร์ฟเวอร์จำลองแบบประสบความสำเร็จในการตั้งค่าการหมดเวลา 2 วินาที

MongoDB: // host1, host2, host3 / ปลอดภัย = true; W = 2; wtimeoutMS = 2000


พารามิเตอร์ตัวเลือกคำอธิบาย

รูปแบบมาตรฐาน:

MongoDB: // [ชื่อผู้ใช้: รหัสผ่าน @] host1 [: พอร์ต 1] [host2 [: พอร์ต 2] ... [hostN [: portN]]] [/ [ฐานข้อมูล] [ตัวเลือก]?]

รูปแบบการเชื่อมต่อมาตรฐานมีหลายตัวเลือก (ตัวเลือก) ดังต่อไปนี้:

ตัวเลือก ลักษณะ
replicaSet = ชื่อ ตรวจสอบว่าชื่อของแบบจำลองที่กำหนด Impliesconnect = replicaSet
slaveOk = true | เท็จ
  • จริง: ภายใต้เชื่อมต่อ = โหมดโดยตรงไดรฟ์จะต้องเชื่อมต่อกับเครื่องแรกถึงแม้ว่ามันจะไม่ได้เป็นเซิร์ฟเวอร์หลัก ภายใต้โหมด Connect = replicaSet ขับจะส่งทั้งหมดเขียนคำขอไปยังหลักและอื่น ๆ ที่อยู่ในการดำเนินการอ่านจากเซิร์ฟเวอร์
  • เท็จ: ภายใต้การเชื่อมต่อ = โหมดโดยตรงไดรฟ์อัตโนมัติจะพบเซิร์ฟเวอร์หลักที่โหมด Connect = replicaSet ไดรฟ์มีการเชื่อมต่อกับเซิร์ฟเวอร์หลักและทุกการอ่านและเขียนคำสั่งที่มีการเชื่อมต่อกับเซิร์ฟเวอร์หลัก
ปลอดภัย = true | เท็จ
    • จริง: หลังจากการดำเนินการปรับปรุงไดรฟ์จะส่ง GetLastError คำสั่งเพื่อให้มั่นใจว่าการปรับปรุงจะประสบความสำเร็จ (นอกจากนี้ยังหมายถึง wtimeoutMS)
เท็จ: หลังจากการปรับปรุงแต่ละคนขับจะไม่ส่ง GetLastError เพื่อให้แน่ใจว่าการปรับปรุงที่ประสบความสำเร็จ
W = n ไดรฟ์เพิ่ม {w: n} คำสั่งใช้กับ GetLastError ปลอดภัย = จริง ..
wtimeoutMS = MS ไดรฟ์เพิ่ม {wtimeout: MS} คำสั่งใช้กับ GetLastError ปลอดภัย = จริง ..
fsync = true | เท็จ
  • จริง: ขับรถเพิ่ม {fsync: จริง}. GetLastError คำสั่งจะมีผลกับความปลอดภัย = true
  • เท็จไดรฟ์จะไม่เพิ่มคำสั่ง GetLastError
วารสาร = true | เท็จ ถ้าตั้งค่าเป็นจริงตรงกับวารสาร (เป็นลายลักษณ์อักษรไปยังฐานข้อมูลก่อนที่จะส่งไปยังนิติบุคคล). นำไปใช้กับความปลอดภัย = true
connectTimeoutMS = MS คุณสามารถเปิดเวลาการเชื่อมต่อ
socketTimeoutMS = MS ส่งและรับซ็อกเก็ตของเวลา