日期:2014-05-16  浏览次数:20432 次

MongoDB的连接字符串介绍

MongoDB连接字符串常用格式

?

?

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

?

备注:字符串连接不区分大小写,并非所有MongoDB驱动都支持完整的连接字符串,不支持此格式连接字串的驱动会有替代连接方案,具体请参照驱动自身的说明文档,看看如何定义uri标准连接的。

?

?

1、参数说明

?

mongodb:// 这是固定的格式,必须要指定。

?

? username:password@ 可选项,如果设置,在连接数据库服务器之后,驱动都会尝试登陆这个数据库

?

?host1 必须的指定至少一个host

?

host1是这个URI唯一要填写的。它指定了要连接服务器的地址。如果要连接复制集,请指定多个主机地址。


? :portX 可选的指定端口,如果不填,默认为27017

?

? /database 如果指定username:password@,连接并验证登陆指定数据库。若不指定,默认打开admin数据库。


? ?options 是连接选项。如果不使用/database,则前面需要加上/。所有连接选项都是键值对name=value,键值对之间通过&或;(分号)隔开

?

?

?

2、options 是连接参数

?

?

  • connect=direct|replicaSet
    • direct: 连接方式为单个服务器。如果提供了多个主机地址,建立连接之后,按顺序访问。如果仅仅指定了一个主机,direct是默认值。
    • replicaSet: 就和描述的那样,连接到replica set . 这个主机地址列表,是为了发现replica set。 如果连接多个主机replicaSet是默认值。

?

  • replicaSet=name
    • 验证replica set的名称。 Impliesconnect=replicaSet.

?

  • slaveOk=true|false
    • true:在connect=direct模式下,驱动会连接第一台机器,即使这台服务器不是主。在connect=replicaSet模式下,驱动会发送所有的写请求到主并且把读取操作分布在其他从服务器。
    • false: 在