Docs 菜单
Docs 主页
/ / /
Ruby 驱动程序
/

创建MongoDB客户端

要连接到 MongoDB 部署,您需要满足两个条件:

  • 连接 URI,也称为连接字符串,它告诉Ruby驾驶员要连接到哪个MongoDB 部署。

  • Mongo::Client对象,用于创建与MongoDB 部署的连接并允许您对其执行操作。

您还可以使用这些组件来自定义Ruby驾驶员在连接到MongoDB时的行为方式。

本指南向您展示如何创建连接string并使用 Mongo::Client 对象连接到MongoDB 。

标准连接string包括以下组件:

组件
说明

mongodb://

必需。将其标识为标准连接格式中字符串的前缀。

db_username:db_password

可选。 身份验证凭证。 如果包含这些内容,客户端将根据 authSource 中指定的数据库对用户进行身份验证。 有关authSource 连接选项的更多信息,请参阅《 身份验证机制》指南。

hostname[:port]

必需。运行MongoDB 的主机名和可选端口号。如果不包含端口号,驾驶员将使用默认端口 27017

/defaultauthdb

可选。 如果连接string包含 db_username:db_password@ 身份验证档案但不包含 authSource 选项,则要使用的身份验证数据库。 如果不包含此组件,客户端将根据admin数据库对用户进行身份验证。

?<options>

可选。 一个查询string ,它将特定于连接的选项指定为 <name>=<value> 对。 有关这些选项的完整说明,请参阅指定连接选项

有关创建连接string 的更多信息,请参阅 MongoDB Server文档中的 连接字符串 。

要创建与MongoDB的连接,请构造 Mongo::Client 类的实例,并将连接 URI 传递给构造函数。以下示例将构造一个 Mongo::Client对象来连接到 localhost 的端口 27017 上的MongoDB 部署:

client = Mongo::Client.new("mongodb://localhost:27017")

或者,您可以向 Mongo::Client 构造函数传递一个字符串大量,每个字符串包含一个主机名和端口号。以下示例展示了如何使用此语法连接到 localhost 的端口 27017

client = Mongo::Client.new(['localhost:27017'])

提示

客户端重用

由于每个Mongo::Client对象代表一个数据库连接池,因此大多数应用程序只需要一个Mongo::Client实例,甚至在多个请求中也是如此。

使用完 Mongo::Client对象后,请调用该对象的 close 方法,如以下示例所示。这将释放与该对象关联的所有资源。

client.close

或者,您可以使用 Ruby 的区块语法来创建 Mongo::Client对象。使用此语法时,客户端将在区块执行完成后自动关闭。

以下示例展示了如何使用区块语法创建 Mongo::Client对象:

Mongo::Client.new("mongodb://localhost:27017") do |client|
# work with the client
end

Mongo::Client要学习;了解有关使用Ruby驾驶员创建 对象的更多信息,请参阅 Mongo::Client 的API文档。

后退

连接

在此页面上