推荐答案
在 MongoDB 中,连接字符串用于指定如何连接到 MongoDB 实例或集群。连接字符串的基本格式如下:
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
示例
连接到本地 MongoDB 实例:
mongodb://localhost:27017
连接到远程 MongoDB 实例并指定数据库:
mongodb://username:password@example.com:27017/mydatabase
连接到副本集:
mongodb://host1:27017,host2:27017,host3:27017/?replicaSet=myReplicaSet
连接到分片集群:
mongodb://mongos1:27017,mongos2:27017,mongos3:27017
使用 SSL 连接:
mongodb://username:password@example.com:27017/?ssl=true
使用认证机制:
mongodb://username:password@example.com:27017/?authSource=admin&authMechanism=SCRAM-SHA-256
本题详细解读
连接字符串的组成部分
协议:
mongodb://
是 MongoDB 连接字符串的标准协议前缀。认证信息:
username:password@
:可选部分,用于指定连接 MongoDB 所需的用户名和密码。- 如果 MongoDB 实例启用了身份验证,则必须提供有效的用户名和密码。
主机和端口:
host1:port1
:指定 MongoDB 实例的主机名和端口号。默认端口为27017
。- 可以指定多个主机和端口,用于连接到副本集或分片集群。
数据库:
/[database]
:可选部分,用于指定要连接的数据库。如果未指定,默认连接到admin
数据库。
选项:
?options
:可选部分,用于指定连接选项。多个选项之间用&
分隔。- 常见的选项包括:
replicaSet
:指定副本集名称。ssl
:启用 SSL 连接。authSource
:指定认证数据库。authMechanism
:指定认证机制,如SCRAM-SHA-1
或SCRAM-SHA-256
。
注意事项
- 安全性:在生产环境中,建议使用 SSL/TLS 加密连接,并启用身份验证。
- 副本集和分片集群:在连接副本集或分片集群时,确保提供所有相关的主机和端口信息。
- 认证机制:根据 MongoDB 的配置选择合适的认证机制,并确保
authSource
正确指定。