我想知道如果我使用的是Heroku Postgres,并且我想转储App 1.0
的数据,然后我想将数据pg_restore
App 2.0
到新版本的应用程序。问题是App 2.0
有了新的字段和表,而pg_restore文档写道:
将向保存时的状态。
我不想将数据库重建到App 1.0
上的状态,我只想获取数据并将其放在新数据库中,我添加的表和字段不应与转储文件中的数据冲突。
一种选择是pg_restore
并"将数据库重建到保存时的状态",然后再次运行迁移。这是最好的路吗?也许还有更好的方法,谢谢你的建议。
您可以尝试pg_dump --data-only
,它将跳过表创建,只转储数据行。然后,当您恢复时,您的数据将进入现有的表中。因此,您需要确保它们已经存在于新数据库中。如果表的定义不同,我不确定会发生什么。
或者,您可以只对要保留的表执行pg_dump --table <table>
。