gpt4 book ai didi

postgresql - 在 Azure 云中创建新的 Postgres 方案以供 Offer-Ready - "Non empty schema"

转载 作者:行者123 更新时间:2023-12-03 04:04:49 26 4
gpt4 key购买 nike

我尝试在 Azure 云上构建 Offer-Ready Docker 容器。虽然我在 PostgreSQL 中创建了一个新的(空白)表,但我收到了这个奇怪的错误消息。

javax.servlet.ServletException: org.eclipse.jetty.servlet.ServletHolder$1: org.flywaydb.core.api.FlywayException: Found non-empty schema(s) "public" without schema history table! Use baseline() or set baselineOnMigrate to true to initialize the schema history table.

我仔细检查了数据库,模式“public”中没有表。我在AWS上没有遇到这个问题。有人知道 Azure 上有什么不同吗?

最佳答案

我也有过同样的经历。

  • Azure 上的 PostgreSQL 数据库似乎为空(\dt 未返回任何结果),
  • 但 Flyway 声称数据库不为空(因此不会应用迁移脚本,因为担心干扰已有的内容)。

这是我所做的:

  1. 在数据库中创建一个新架构,例如myschema
  2. 删除名为 public 的默认架构
  3. 将参数 currentSchema=myschema 添加到 JDBC URL

然后就成功了。我一直没能找出这个问题的根本原因是什么。

编辑:此链接可能提供有关 Azure PostgreSQL 上默认情况下“公共(public)”架构中的对象的更多信息:https://community.atlassian.com/t5/Jira-questions/Re-quot-database-that-is-not-empty-quot-when-trying-to-use-azure/qaq-p/1308795/comment-id/410329#M410329

关于postgresql - 在 Azure 云中创建新的 Postgres 方案以供 Offer-Ready - "Non empty schema",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60490696/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com