跳到主要內容

將您的 MongoDB 資料庫連線到現有的 TypeScript 專案

連線您的資料庫

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

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

在這種情況下,url透過環境變數設定的,該變數定義在 .env

.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 問題中找到更多資訊。

© . This site is unofficial and not affiliated with Prisma Data, Inc.