两种的连接字符串格式
1.标准的连接格式
mongodb://[username:password@]host1[:port1][,...hostN[:portN]][/[defaultauthdb][?options]]
(1)单机连接格式
mongodb://username:password@host[:port]/defaultauthdb?<options>
如果没有添加defaultauthdb,前面的/也必须存在。
(2)复制集连接格式
复制集要包含参数replicaSet
mongodb://username:[email protected]:27017,mongodb1.example.com:27017,mongodb2.example.com:27017/?authSource=admin&replicaSet=myRepl
(3)分片连接格式
分片环境中要指定mongos的主机
mongodb://username:[email protected]:27017,mongos1.example.com:27017,mongos2.example.com:27017/?authSource=admin
备注:如果authSource和defaultauthdb都没有指定,默认就是使用admin数据库。
如果用户和密码中有特殊符号:
: / ? # [ ] @
这些特殊符号要使用%进行转换编码。为了减少麻烦,可以不使用这些特殊的字符。以下是示例:
mongodb://myDBReader:D1fficultP%[email protected]:27017/?authSource=admin
转换文档:
https://www.rfc-editor.org/rfc/rfc3986#section-2.1
2.DNS种子列表连接格式
这部分需要网络工程师的协助,参考文档即可。
连接字符串选项
连接选项是成对出现的,格式:name=value。这里的name是大小写不敏感的,但是value是大小写敏感的。多个选项之间用&隔离。
Write Concern选项
以下都是支持写关注选项的
·MongoDB drivers
·mongosh
·mongofiles
·mongoimport
·mongorestore
Write Concern可以在连接字符串中定义,也可以在方法(比如insert、update)中以参数的形式指定。如果同时指定了,那么方法参数会覆盖连接字符串的设置。
例如:
mongodb://db0.example.com,db1.example.com,db2.example.com/?replicaSet=myRepl&w=majority&wtimeoutMS=5000
readConcern选项
支持的级别:
·local
·majority
·linearizable
·available
例如:
mongodb://db0.example.com,db1.example.com,db2.example.com/?replicaSet=myRepl&readConcernLevel=majority
读优先(Read Preference)
mongodb://db0.example.com,db1.example.com,db2.example.com/?replicaSet=myRepl&readPreference=secondary&maxStalenessSeconds=120
mongodb://mongos1.example.com,mongos2.example.com/?readPreference=secondary&maxStalenessSeconds=120
标签:MongoDB,27017,URI,连接,mongodb,字符串,格式,com,example From: https://www.cnblogs.com/abclife/p/17122447.html