连接你的数据库 (MongoDB)
连接你的数据库
要连接你的数据库,你需要将 Prisma schema 中 datasource
块的 url
字段设置为你的数据库连接 URL
prisma/schema.prisma
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}
在本例中,url
是通过环境变量设置的,该变量在 .env
中定义
.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 issue 中找到更多信息。