首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将模型迁移到数据库Prisma时出错

将模型迁移到数据库Prisma时出错
EN

Stack Overflow用户
提问于 2020-12-20 21:10:30
回答 3查看 16.5K关注 0票数 7

我开始了一个项目,在那里我必须学习一项新技术,我选择了用Prisma和Next.js构建一个完整的应用程序。我第一次用这两种药。我已经构建了前端应用程序w/ React.js,并且对使用Next很有信心。不过,我很难开始和Prisma在一起。我遵循prisma的‘从头开始’的指令,我坚持步骤“将您的数据模型映射到数据库模式,您需要使用prisma迁移CLI命令:"和我运行命令:npx prisma migrate dev --name init --preview-feature I得到错误:

代码语言:javascript
复制
P3014
Prisma Migrate could not create the shadow database. Please make sure the database user has permission to create databases.  More info: https://pris.ly/d/migrate-shadow. Original error: 
Database error: Error querying the database: db error: ERROR: permission denied to create database

我的数据库是postgresQL,它托管在heroku上。我的DATABASE_URL是从heroku的信息中复制/粘贴的。

下面是我的.json依赖关系:

代码语言:javascript
复制
  "name": "photo_album",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "prisma": "prisma",
    "dev": "next dev",
    "build": "next build",
    "start": "next start"
  },
  "dependencies": {
    "@prisma/client": "^2.13.1",
    "next": "10.0.3",
    "react": "17.0.1",
    "react-dom": "17.0.1"
  },
  "devDependencies": {
    "@prisma/cli": "^2.13.1"
  }
}

我试过回顾。但是,我的数据库目前没有表,这会导致错误。我尝试了npx迁移,保存了我在youtube上看到的构建的-experimental b/c。我尝试了npm @prisma/cli --save-dev b/c,它可以解决这里发布在堆栈溢出上的相同问题。另一种解决方案是使用Docker。我还没试过呢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-12-21 06:45:15

是的,目前这是因为Prisma需要权限来创建一个临时数据库来应用迁移,而Heroku管理的数据库没有提供这种权限。您可以做的一件事是在本地安装Postgres并使用它进行开发,另一种选择是从线程中执行解决方案,这与您所面临的问题相同。

票数 6
EN

Stack Overflow用户

发布于 2021-02-26 23:14:16

根据尼可拉斯伯克,您也可以运行prisma db push而不是prisma migrate dev命令,只需运行:

代码语言:javascript
复制
npx prisma db push --preview-feature
票数 18
EN

Stack Overflow用户

发布于 2021-05-06 14:21:17

我可以通过在Heroku中创建另一个DB作为我的影子DB来解决这个问题。然后在schema.prisma中添加以下代码:

代码语言:javascript
复制
datasource db {
  provider          = "postgresql"
  url               = env("DATABASE_URL")
  shadowDatabaseUrl = env("SHADOW_DATABASE_URL")
}
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65384818

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档