跳到主要內容

連接您的資料庫

連接您的資料庫

若要連接您的資料庫,您需要將 Prisma schema 中 datasource 區塊的 url 欄位設定為您的資料庫連接 URL

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

請注意,prisma init 建立的預設 schema 使用 PostgreSQL 作為 provider。對於 PlanetScale,您需要編輯 datasource 區塊以改用 mysql provider

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

您還需要將關聯模式類型設定為 prismadatasource 區塊中

schema.prisma
datasource db {
provider = "mysql"
url = env("DATABASE_URL")
relationMode = "prisma"
}

url透過環境變數設定,該變數在 .env 中定義

.env
DATABASE_URL="mysql://janedoe:mypassword@server.us-east-2.psdb.cloud/mydb?sslaccept=strict"

您現在需要調整連接 URL 以指向您自己的資料庫。

連接 URL

您的資料庫的連接 URL 格式通常取決於您使用的資料庫。PlanetScale 使用 MySQL 連接 URL 格式,其結構如下(全部大寫的部分是您特定連線詳細資訊的預留位置

mysql://USER:PASSWORD@HOST:PORT/DATABASE

以下是每個組件的簡短說明

  • USER:您的資料庫使用者名稱
  • PASSWORD:您的資料庫使用者密碼
  • PORT:您的資料庫伺服器正在執行的埠號(MySQL 通常為 3306
  • DATABASE資料庫的名稱

對於 PlanetScale 託管的資料庫,連接 URL 看起來類似這樣

.env
DATABASE_URL="mysql://myusername:mypassword@server.us-east-2.psdb.cloud/mydb?sslaccept=strict"

可以從您的 PlanetScale 帳戶找到給定資料庫分支的連線 URL,方法是前往分支的概觀頁面並選取「Connect」下拉式選單。在「Passwords」區段中,產生新的密碼並選取「Prisma」以取得 Prisma 格式的連線 URL。

替代方法:使用 PlanetScale CLI 連接

或者,您可以使用 PlanetScale CLI連接到您的 PlanetScale 資料庫伺服器,並使用本地連接 URL。在這種情況下,連接 URL 看起來會像這樣

.env
DATABASE_URL="mysql://root@localhost:PORT/mydb"

若要連接到您的分支,請使用以下命令

pscale connect prisma-test branchname --port PORT

如果您使用預設埠號 3306,則可以省略 --port 旗標。