无法从PostgreSQL中删除“ag_catalog”架构或其他表(错误:表“ag_label”不存在)

1l5u6lss  于 2023-06-05  发布在  PostgreSQL
关注(0)|答案(1)|浏览(121)

在我的postgres数据库中,我有一些表是在错误的模式("ag_catalog")上创建的,我决定无论如何都要删除它,因为它只是为了测试。我还安装了age扩展,但后来我用DROP EXTENSION age;删除了它。当我尝试删除“ag_catalog”模式时,终端显示以下错误:

demo=# DROP SCHEMA ag_catalog CASCADE;
NOTICE:  drop cascades to 3 other objects
DETAIL:  drop cascades to table polls
drop cascades to table options
drop cascades to table votes
ERROR:  table "ag_label" does not exist

我尝试再次创建扩展并执行相同的命令来删除模式,但现在它显示另一个错误:

demo=# DROP SCHEMA ag_catalog CASCADE;
NOTICE:  drop cascades to 4 other objects
DETAIL:  drop cascades to table polls
drop cascades to table options
drop cascades to table votes
drop cascades to extension age
ERROR:  index "ag_label_relation_index" does not exist
o2gm4chl

o2gm4chl1#

尝试直接访问和操作ag表时出现错误。我建议你从postgres中删除扩展库,可能在/usr/local/<enter_postgres_directory>/lib/中,并删除age.so文件,然后再试一次。
如果这不起作用(并且您没有任何有价值的数据),您可以删除initdb文件并重新初始化数据库。
最坏的情况是重新安装postgres和扩展。

相关问题