Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有postgresql和postgis扩展的flyway 3.3迁移_Postgresql_Postgis_Flyway - Fatal编程技术网

带有postgresql和postgis扩展的flyway 3.3迁移

带有postgresql和postgis扩展的flyway 3.3迁移,postgresql,postgis,flyway,Postgresql,Postgis,Flyway,我束手无策,不知道还能做些什么。我正在尝试在我的本地数据库上进行flyway清理。我有最新的Postgres 9.4和最新的PostGIS扩展。我使用公共模式来存储10个表和7个序列。。。它很小 现在,我正在尝试使用maven执行一个简单的FlywayDB3.3Clean指令。我在maven配置文件中列出了用户名、密码和公共模式。我不断地收到错误,建议PostGIS扩展使用各种视图和表,所以它不会删除它们 因此,在这里搜索,并在互联网上一般建议我这样做: 将用户myuser改为超级用户;这并没有

我束手无策,不知道还能做些什么。我正在尝试在我的本地数据库上进行flyway清理。我有最新的Postgres 9.4和最新的PostGIS扩展。我使用公共模式来存储10个表和7个序列。。。它很小

现在,我正在尝试使用maven执行一个简单的FlywayDB3.3Clean指令。我在maven配置文件中列出了用户名、密码和公共模式。我不断地收到错误,建议PostGIS扩展使用各种视图和表,所以它不会删除它们

因此,在这里搜索,并在互联网上一般建议我这样做: 将用户myuser改为超级用户;这并没有解决我的问题

在其他研究中,有人建议对数据使用另一种模式,而不是公共模式。因此,我为我的应用程序创建了一个新的模式,并移动了我的序列和表,包括表spatial_ref_sys。我更新了maven配置以只清理这个新模式。。。但是它说它不能删除“空间参考系统”,因为它被PostGIS使用

我有10个表格用于我的应用程序,有7个序列。。。我只希望Flyway清理我的数据库,这样我就可以尝试使用基线文件来重建它。我不是PostGIS方面的专家,所以我不知道我是否可以在不破坏任何空间功能的情况下删除该表


感谢您的帮助,如果我能提供任何其他数据,请告诉我。

这是一个已知的问题,没有简单的解决方案,但有两个很好的解决方法:

如前所述,这是一个已知的问题

使用以下语句添加名为beforeClean.sql的文件:

   DROP EXTENSION IF EXISTS PostGIS;

解决问题

我在测试环境中遇到了这个问题,请参见此答案