如何将postgres 12生成的sql文件恢复到postgres 9.6数据库中

如何将postgres 12生成的sql文件恢复到postgres 9.6数据库中,sql,database,postgresql,restore,postgres-9.6,Sql,Database,Postgresql,Restore,Postgres 9.6,我正在尝试恢复数据库。数据库sql文件约为4.5 GB,因此我无法在编辑器上编辑它。我在postgres 12中使用以下命令转储数据库 pg_dump -d postgres > backup.sql 但是我需要在Postgres9.6中使用相同的数据库。为此,我编写了以下代码来恢复它 psql -d postgres < backup.sql 我看到了这个问题的答案。答案已经说sql文件在旧版本上不起作用。但我想知道,有没有办法使用此sql文件进行恢复?感谢@jjanes和@J

我正在尝试恢复数据库。数据库sql文件约为4.5 GB,因此我无法在编辑器上编辑它。我在postgres 12中使用以下命令转储数据库

pg_dump -d postgres > backup.sql
但是我需要在Postgres9.6中使用相同的数据库。为此,我编写了以下代码来恢复它

psql -d postgres < backup.sql

我看到了这个问题的答案。答案已经说sql文件在旧版本上不起作用。但我想知道,有没有办法使用此sql文件进行恢复?

感谢@jjanes和@JGH的友好合作。我找到了唯一的解决办法。首先,我使用以下命令备份数据库

pg_dump -U postgres -h localhost -p 5432 -W earthquake | gzip -c > backup.gz
然后我从
pgadmin 4
手动创建地震数据库。 在得到
backup.gz
文件后,我在终端中使用以下命令恢复它

gzip -d -c backup.gz | sed -e '/AS integer/d' | psql -U postgres -h localhost -p 5432 -W earthquake

请显示您自己的错误消息。根据其他人的错误消息,很难判断数据库中发生了什么。这是可能的,但可能需要一点时间。backup.sql是否足够小,可以在文本编辑器中编辑?这是否回答了您的问题?我更新了我的问题。我的数据库大小为4.5 GB,因此无法在文本编辑器上编辑。
gzip -d -c backup.gz | sed -e '/AS integer/d' | psql -U postgres -h localhost -p 5432 -W earthquake