PostgreSQL 10.2使用pg_restore恢复heroku上下载的备份时报错。
恢复命令:
pg_restore --verbose --clean --no-acl --no-owner -h localhost -d mydb mydb.dump
错误信息:
pg_restore: [archiver] unsupported version (1.13) in file header
这个原因是PostgreSQL在2018-03-01发布了一个安全更新的补丁。参考:https://www.postgresql.org/about/news/1834/。
解决方法
升级到各版本对应的更新版本,更新版本为:10.3, 9.6.8, 9.5.12, 9.4.17以及9.3.22
如:PostgreSQL10.2升级到10.3。
相关漏洞:
此安全漏洞为:CVE-2018-1058: Uncontrolled search path element in pg_dump and other client applications。
PostgreSQL对此漏洞发的指南:https://wiki.postgresql.org/wiki/A_Guide_to_CVE-2018-1058:_Protect_Your_Search_Path