[英]Postgres ERROR: permission denied for table
我有一个使用远程数据库中的 pg_dump 生成的转储文件。 我正在使用该文件使用 psql 恢复和填充数据库。 我没有用户名和数据库名。 我查看了 sql 文件并找出了用户和数据库。 这是我的步骤: 1. psql -h <> -u <> -d (我在这里使用了超级用户)。 2. 创建用户,因为应用程序只需要使用此用户访问。 3.使用Pgadmin将数据库的所有者更改为步骤2中创建的用户。
我无法访问任何表并收到错误 -错误:表的权限被拒绝
请帮忙 !
谢谢
最好使用 dump 和 restore 而不是 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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.