我正在尝试使用'psql -U用户名-W dbname
我已经创建了这样的数据库:“createdb -O username dbname”

仅要导入7个表,而仅导入其中3个表便会使其中断。

有人提示,该怎么办?

最佳答案

如果备份采用“自定义”格式(-Fc),则可以改用pg_restore,以便告诉它不要应用所有权更改:

pg_restore -U username -W --no-owner --dbname=dbname migrations/schema.psql

将以“用户名”作为所有者创建所有对象。

除非如此,否则尝试将ALTER OWNER和SET SESSION AUTHORIZATION命令grep出到新文件中(或通过将grep输出通过管道发送到psql)。这些命令应始终以纯文本输出格式放在一行中。

关于PostgreSQL抛出错误: "ERROR: permission denied for relation table_name",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3512247/

10-12 13:08