权限被拒绝错误,如何将* .sql数据库导入'postgres'用户

时间:2014-05-09 12:27:45

标签: sql postgresql import

我想导入' prod.sql'文件到数据库' d_p_d'对于' postgres'用户

postgres=# \l
 d_p_d                 | postgres | UTF8     | en_IN   | en_IN | 
 postgres              | postgres | UTF8     | en_IN   | en_IN | 
 template0             | postgres | UTF8     | en_IN   | en_IN | =c/postgres          +
                       |          |          |         |       | postgres=CTc/postgres
 template1             | postgres | UTF8     | en_IN   | en_IN | =c/postgres          +
                       |          |          |         |       | postgres=CTc/postgres


postgres=# \du
 postgres  | Superuser, Create role, Create DB, Replication | {}

错误:

postgres=# \i /home/pallavsharma/prod.sql
/home/pallavsharma/prod.sql: Permission denied

postgres=# \i /var/dump/prod.sql
/var/dump/prod.sql: Permission denied

1 个答案:

答案 0 :(得分:1)

解决方案是通过以下命令简单地更改文件prod.sql的所有者:

pallavsharma@smartbuzz-G41M-Combo:/var/dump$ sudo chown postgres prod.sql
[sudo] password for pallavsharma: 

然后只需导入db:

postgres=# \i /var/dump/prod.sql

多数民众赞成,它有效。