我没有问题恢复postgres数据库,但今天当我试图恢复它之前它给我一个错误,这里我做了什么:
我尝试按如下方式恢复postgres数据库:
mostafa @jamareh:〜/.../ DB $ sudo -u postgres psql -d dbname -f dbname.sql
但它给了我这个:
无法将目录更改为“/ home /....../ DB”
dbname.sql:没有这样的文件或目录
我也试过sudo -su postgres...
,但它既不起作用
我该怎么做才能解决它?
提前感谢,
答案 0 :(得分:0)
从初看起,由于权限问题,postgres UNIX用户可能无法访问您的dbname.sql文件。
您可以更改权限(或将文件移动到UNIX用户postgres可读的地方,比如/ tmp),或者更好的是,从您自己的UNIX用户恢复数据库,但使用正确的数据库用户。例如,您将拥有:
mostafa @jamareh:〜/.../ DB $ psql -d dbname -U postgres -f dbname.sql
请注意,没有sudo,但是你告诉psql以DB用户postgres的身份运行脚本(假设你拥有postgres DB用户的凭据)。