Postgres错误:表的权限被拒绝

时间:2020-04-23 03:14:22

标签: postgresql psql rds pg-dump

我有一个通过使用pg_dump从远程数据库生成的转储文件。我正在使用该文件来还原并使用psql填充数据库。 我没有用户名和数据库名。我偷看了sql文件,找出了用户和数据库。 这是我的步骤: 1. psql -h <> -u <> -d(我在这里使用了超级用户)。 2.创建用户,因为应用程序仅需要使用该用户进行访问。 3.使用Pgadmin将数据库的所有者更改为在步骤2中创建的用户。

我无法访问任何表并收到错误-错误:表的权限被拒绝

请帮助!

谢谢

1 个答案:

答案 0 :(得分:1)

最好使用转储和还原而不是psql来还原数据库。 例如

例如,假设您在remoteDB中具有数据库dbname_source,在localDB中具有dbname_target,那么可以使用以下命令进行转储和还原

./pg_dump -U postgres -p 5432 -h <remote_IP> -Ft dbname_source > dump_of_source.sql.tar 
./pg_restore -U postgres -h localhost -p 5432 -d dbname_target dump_of_source.sql.tar
相关问题