连接你的数据库
要连接你的数据库,你需要将 Prisma schema 中 datasource
块的 url
字段设置为你的数据库连接 URL
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}
请注意,prisma init
创建的默认 schema 使用 PostgreSQL 作为 provider
。 对于 PlanetScale,你需要编辑 datasource
块以使用 mysql
provider
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
}
你还需要将关系模式类型设置为 prisma
,以便在 datasource
块中模拟外键约束
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
relationMode = "prisma"
}
注意:自 2024 年 2 月起,你可以选择在 PlanetScale 的数据库级别上使用外键约束,这样就不需要设置
relationMode = "prisma"
了。
url
通过环境变量设置,该变量在 .env
中定义
DATABASE_URL="mysql://janedoe:[email protected]/mydb?sslaccept=strict"
现在你需要调整连接 URL 以指向你自己的数据库。
你的数据库连接 URL 的格式通常取决于你使用的数据库。 PlanetScale 使用 MySQL 连接 URL 格式,其结构如下(全部大写的部分是你特定连接详细信息的占位符)
mysql://USER:PASSWORD@HOST:PORT/DATABASE
以下是每个组件的简短说明
USER
: 你的数据库用户的名称PASSWORD
: 你的数据库用户的密码PORT
: 你的数据库服务器运行的端口(MySQL 通常为3306
)DATABASE
: 数据库的名称
对于托管在 PlanetScale 上的数据库,连接 URL 看起来类似于这样
DATABASE_URL="mysql://myusername:[email protected]/mydb?sslaccept=strict"
给定数据库分支的连接 URL 可以从你的 PlanetScale 帐户中找到,方法是转到分支的概览页面并选择“Connect”下拉菜单。 在“Passwords”部分,生成新密码并选择“Prisma”以获取 Prisma 格式的连接 URL。
替代方法:使用 PlanetScale CLI 连接
或者,你可以使用 PlanetScale CLI 连接到你的 PlanetScale 数据库服务器,并使用本地连接 URL。 在这种情况下,连接 URL 将如下所示
DATABASE_URL="mysql://root@localhost:PORT/mydb"
我们建议将 .env
添加到你的 .gitignore
文件中,以防止提交你的环境变量。
要连接到你的分支,请使用以下命令
pscale connect prisma-test branchname --port PORT
如果你使用默认端口 3306
,则可以省略 --port
标志。