错误:架构引擎错误:错误:用户'',prisma,postgresql的密码身份验证失败

rqqzpn5f  于 2023-11-18  发布在  PostgreSQL
关注(0)|答案(2)|浏览(253)

我已经用Vercel创建了Postgres数据库,当尝试使用命令 npx prisma migrate dev 迁移时,我收到:

  1. Environment variables loaded from .env
  2. Prisma schema loaded from prisma\schema.prisma
  3. Datasource "db": PostgreSQL database "verceldb", schema "public" at "ep-curly-resonance-50034155.eu-central-1.postgres.vercel-storage.com:5432"
  4. Error: Schema engine error:
  5. ERROR: password authentication failed for user ''

字符串
我在后端很弱,不知道如何帮助你理解这个问题,所以我留下了这些prisma和.env代码,以防你需要它们:
schema.prisma:

  1. // This is your Prisma schema file,
  2. // learn more about it in the docs: https://pris.ly/d/prisma-schema
  3. generator client {
  4. provider = "prisma-client-js"
  5. }
  6. datasource db {
  7. provider = "postgresql"
  8. url = env("POSTGRES_PRISMA_URL") // uses connection pooling
  9. directUrl = env("POSTGRES_URL_NON_POOLING") // uses a direct connection
  10. }
  11. model Form {
  12. id Int @id @default(autoincrement())
  13. userId String
  14. createdAt DateTime @default(now())
  15. published Boolean @default(false)
  16. name String
  17. description String @default("")
  18. content String @default("[]")
  19. visits Int @default(0)
  20. submissions Int @default(0)
  21. shareURL String @default(uuid())
  22. FormSubmissions FormSubmissions[]
  23. }
  24. model FormSubmissions {
  25. id Int @id @default(autoincrement())
  26. createdAt DateTime @default(now())
  27. formId Int
  28. form Form @relation(fields: [formId], references: [id])
  29. content String
  30. }


.env:

  1. NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_aW1tZW5zZS1mYWxjb24tNzQuY2xlcmsuYWNjb3VudHMuZGV2JA
  2. CLERK_SECRET_KEY=sk_test_w9Pc0w9eCvYrcl4iwogc28r2YLPbIyhKyZRAi8Sw7A
  3. NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
  4. NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
  5. NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/
  6. NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/
  7. # This was inserted by `prisma init`:
  8. # Environment variables declared in this file are automatically made available to Prisma.
  9. # See the documentation for more detail: https://pris.ly/d/prisma-schema#accessing-environment-variables-from-the-schema
  10. # Prisma supports the native connection string format for PostgreSQL, MySQL, SQLite, SQL Server, MongoDB and CockroachDB.
  11. # See the documentation for all the connection string options: https://pris.ly/d/connection-strings
  12. POSTGRES_PRISMA_URL="postgres://:@ep-curly-resonance-50034155-pooler.eu-central-1.postgres.vercel-storage.com:5432/verceldb?pgbouncer=true&connect_timeout=15"
  13. POSTGRES_URL_NON_POOLING="postgres://:@ep-curly-resonance-50034155.eu-central-1.postgres.vercel-storage.com:5432/verceldb"

7nbnzgx9

7nbnzgx91#

在posgresql db的.env文件中没有任何用户名和密码。
连接URL也可以接受参数。下面是与上面相同的示例,其中三个参数的占位符值以小写字母表示:
postgresql://USER:PASSWORD@HOST:PORT/DATABASE?KEY1=VALUE&KEY2=VALUE&KEY3=VALUE
如果你在Versel上创建数据库,你需要在选项卡“.env.local”中找到名为“POSTGRES_USER”和“POSTGRES_PASSWORD”的环境变量,或者只是复制它们并粘贴到你的.env文件中。

crcmnpdw

crcmnpdw2#

这里不要写变量名,写变量的实际值

POSTGRES_PRISMA_URL=“postgres:POSTGRES_USER:POSTGRES_PASSWORD@ep-curly-resonance-50034155-pooler.eu-central-1.postgres.vercel-storage.com:5432/verceldb?pgbouncer=true&connect_timeout=15“
POSTGRES_URL_NON_POOLING=“postgres:POSTGRES_USER:POSTGRES_PASSWORD@ep-curly-resonance-50034155.eu-central-1.postgres.vercel-storage.com:5432/verceldb“
env snippet
POSTGRES_USER和POSTGRES_PASSWORD的值将在代码片段中可用!您可以在上面的链接中查看它!

相关问题