跳至主要内容

连接您的数据库 (MongoDB)

要连接您的数据库,您需要将 Prisma 模式中 datasource 块的 url 字段设置为您的数据库 连接 URL

prisma/schema.prisma
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}

在这种情况下,url通过环境变量设置的,它在 .env 中定义(示例使用 MongoDB Atlas URL)

.env
DATABASE_URL="mongodb+srv://test:[email protected]/myFirstDatabase"

您现在需要调整连接 URL 以指向您自己的数据库。

您的数据库 连接 URL 的格式 依赖于您使用的数据库。对于 MongoDB,它看起来如下(所有大写字母拼写的部分是您特定连接详细信息的占位符

mongodb://USERNAME:PASSWORD@HOST:PORT/DATABASE

以下是每个组件的简短说明

  • USERNAME:您的数据库用户的名称
  • PASSWORD:您的数据库用户的密码
  • HOST:运行 mongod(或 mongos)实例的宿主机
  • PORT:您的数据库服务器运行的端口(对于 MongoDB 通常为 27017
  • DATABASE:数据库的名称。请注意,如果您使用的是 MongoDB Atlas,则需要手动将数据库名称附加到连接 URL,因为来自 MongoDB Atlas 的环境链接不包含它。

疑难解答

Error in connector: SCRAM failure: Authentication failed.

如果您看到 Error in connector: SCRAM failure: Authentication failed. 错误消息,您可以通过 在连接字符串末尾添加 ?authSource=admin 来指定用于身份验证的源数据库。

Raw query failed. Error code 8000 (AtlasError): empty database name not allowed.

如果您看到 Raw query failed. Code: unknown. Message: Kind: Command failed: Error code 8000 (AtlasError): empty database name not allowed. 错误消息,请确保将数据库名称附加到数据库 URL。您可以在此 GitHub 问题 中找到更多信息。