跳到主内容

连接您的数据库 (MongoDB)

要连接到数据库,您需要在 Prisma schema 中的 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:test@cluster0.ns1yp.mongodb.net/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 issue 中找到更多信息。