使用 Node.js 连接 MongoDB 数据库

使用 Node.js 连接 MongoDB 数据库

💡 原文英文,约1400词,阅读约需6分钟。
📝

内容提要

本文介绍用 Node.js 连接 MongoDB 的步骤:安装 Node.js 和 MongoDB 驱动,创建 Atlas 免费集群并加载示例数据,获取连接字符串;再用 MongoClient 连接集群,编写 main() 函数列出数据库名称,最后运行脚本查看结果。

🔎

延伸解读

连接字符串中的用户凭据并非 Atlas 登录账号

文章特别提醒,连接字符串中填写的用户名和密码是你在 Atlas 中创建的 MongoDB 数据库用户凭据,而不是你用来登录 Atlas 网站本身的账号密码。这一区分对初学者很重要,混淆两者会导致连接失败。在复制连接字符串后,务必替换其中的占位符,并确保使用正确的数据库用户信息。

连接与关闭的健壮性处理

示例代码将连接、查询和关闭操作包裹在 try/catch/finally 结构中,确保即使发生错误也能关闭数据库连接。这种模式能避免连接泄漏,是编写可靠 Node.js 数据库脚本的良好实践。此外,调用 main() 时使用 .catch(console.error) 将未捕获的异常输出到控制台,便于调试。

驱动版本与 Node.js 版本的兼容性

文章指出当前 MongoDB Node.js 驱动要求 Node.js 4.x 或更高版本,示例使用的是 Node.js 14.15.4 和驱动 3.6.4。运行代码时可能出现关于 URL 字符串解析器和服务器发现与监控引擎的弃用警告,可通过向 MongoClient 传递 useNewUrlParser 和 useUnifiedTopology 选项来消除。读者应注意自己环境中的版本匹配,避免因版本不兼容导致意外行为。

❓

Q&A

用 Node.js 连接 MongoDB 需要提前安装什么?

需要安装 Node.js(版本 4.x 或以上,示例使用 14.15.4)和 MongoDB Node.js 驱动,可通过 npm install mongodb 安装。

如何创建一个免费的 MongoDB 集群并加载示例数据?

使用 MongoDB Atlas 创建免费层集群(M0 集群免费),然后加载示例数据。具体步骤可参考视频教程。

怎么获取 MongoDB 集群的连接字符串?

在 Atlas 中点击集群的 CONNECT,按照向导添加当前 IP 地址并创建 MongoDB 用户,选择 Connect Your Application,驱动版本选 Node.js 3.6 或更高,即可复制连接字符串。

连接 MongoDB 时出现 DeprecationWarnings 警告怎么办?

可以在实例化 MongoClient 时传入选项 { useNewUrlParser: true, useUnifiedTopology: true } 来消除警告。

如何编写 Node.js 脚本列出 MongoDB 中的所有数据库?

在 main() 函数中,使用 await client.connect() 连接集群,然后调用 listDatabases() 函数,该函数通过 client.db().admin().listDatabases() 获取数据库列表并打印每个数据库的名称。

运行 Node.js 脚本连接 MongoDB 后输出什么?

运行 node connection.js 后,控制台会输出集群中的数据库列表,例如 sample_airbnb、sample_geospatial、sample_mflix 等以及 admin 和 local。

🏷️

标签

➡️

继续阅读