2013-11-07 2 views
1

я не имел никаких проблем, чтобы восстановить базу данных Postgres, но сегодня, когда я попытался восстановить его, как и раньше он дал мне ошибку, то здесь, Что я сделал:Отказ восстановить Postgres БД

я попытался восстановить Postgres базы данных следующим образом:

Мустафы @ jamareh: ~ /.../ DB $ Sudo -u Postgres PSQL -d имя_бд -f dbname.sql

, но это дает мне это:

не может изменить каталог для «/home/....../DB»

dbname.sql: Нет такого файла или каталога

также я попытался sudo -su postgres..., но он не работает ни

Что я могу сделать, чтобы решить эту проблему?

заранее спасибо,

ответ

0

Из первоначального вида, это может быть, что пользователь Postgres UNIX не имеет доступа к вашему dbname.sql файла из-за проблем разрешения.

Вы можете либо изменить разрешения (или перенести файл в место, которое читается пользователем postgres пользователя UNIX, скажем,/tmp), или, лучше, восстановить базу данных у вашего собственного пользователя UNIX, но с соответствующей базой данных пользователь. Например, вы бы:

MOSTAFA @ jamareh: ~ /.../ DB $ PSQL -d имя_бд -U Postgres -f dbname.sql

Обратите внимание, что нет Судо, но что вы скажите psql, чтобы запустить сценарий как postgres пользователя DB (при условии, что у вас есть учетные данные для пользователя postgres DB).

+0

спасибо @small_duck, теперь это работает, изменив каталог на tmp, но он работал в домашнем каталоге, в чем проблема? –

+0

Проверьте разрешения всех каталогов, необходимых для перехода из вашего домашнего каталога в ../DB. Там где-то должно быть разрешение на выполнение. –

Смежные вопросы