Не удалось подключиться к базе данных в postgresql - PullRequest
0 голосов
/ 04 мая 2018

1.Когда я применяю эту команду в командной строке, она просит меня ввести пароль, и я могу выполнить все действия в базе данных

psql -h localhost -p 5432 -U postgres -f test.sql newdb

2.но когда я ставлю эту команду, она показывает мне ошибку "PGPASSWORD" не распознается как внутренняя или внешняя команда, работающая программа или командный файл. "

PGPASSWORD=root psql -h localhost -p 5432 -U postgres -P root -f test.sql newdb

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

Поместите ваши переменные как:

 PGPASSWORD=%s pg_dump --host=%s --port=%s --username=%s %s -f %s

Измените %s на ваш действительный текст.

0 голосов
/ 04 мая 2018

Ashwin, PGPASSWORD - это не команда, это системная пользовательская / глобальная переменная, которая хранит ваш пароль для вас. Таким образом, команда «psql» не будет запрашивать пароль в следующий раз. Для подключения к базе данных используйте ту же команду, что и ранее, т. Е. Ниже единицы ...

psql -h localhost -p 5432 -U postgres -f test.sql newdb

Но на этот раз все, что вам нужно сделать, это установить глобальную переменную.

Система Windows:

Вы можете установить эту переменную из переменной Environment системных свойств.

Система Linux:

export PGPASSWORD=yourpassword

или вы можете добавить этот экспорт в файл ".bashrc".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...