1

我恢复 postgres 数据库没有问题,但是今天当我尝试像以前一样恢复它时,它给了我一个错误,这里我做了什么:

我尝试按如下方式恢复 postgres 数据库:

mostafa@jamareh:~/.../DB$ sudo -u postgres psql -d dbname -f dbname.sql

但它给了我这个:

无法将目录更改为“/home/....../DB”

dbname.sql:没有这样的文件或目录

我也试过sudo -su postgres...了,但也没有用

我能做些什么来解决它?

提前致谢,

4

1 回答 1

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 用户的凭据)。

于 2013-11-07T10:21:56.510 回答