Heroku pg:pull pg_dump扩展名/库版本不匹配

时间:2020-03-02 16:47:20

标签: heroku heroku-postgres pg-dump

我刚刚将Heroku应用程序的PostgreSQL升级到了版本12。

我目前在Heroku的pg:pull上遇到问题,其中服务器pg_dump的扩展名/库显然是较旧的版本:

pg_restore: error: could not execute query: ERROR:  incompatible library "/usr/local/lib/postgresql/btree_gin.so": version mismatch
DETAIL:  Server is version 10, library is version 12.
Command was: CREATE EXTENSION IF NOT EXISTS btree_gin WITH SCHEMA public;

我运行的命令是:heroku pg:pull ${SERVER_DB} ${DEV_DB} -a ${APP}

我尝试了ALTER EXTENSION btree_gin UPDATE;,但没有任何帮助。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我没有意识到此错误与本地计算机的PostgreSQL服务器版本有关,而不是与Heroku上的服务器有关。

执行brew postgresql-upgrade-database将通过升级服务器版本来解决此问题。

我最终只是删除了现有的本地数据库并重新安装了PostgreSQL,因为运行brew postgresql-upgrade-database涉及到复制整个表。我的本地存储空间不足。