Изменение пользователя базы данных postgreSQL из пользователя windows в CMD

Я недавно установил PostgreSQL на windows 7, каждый раз, когда я пытаюсь использовать CMD для выполнения команды SQL, я получаю эту ошибку


createdb: could not connect to database template1: FATAL: password authentication failed for user "R-61"

, где R-61-имя пользователя компьютера windows.

вот как я использую CMD с pgSQL

  • первый компакт-диск в папку pgsql bin $ cd C:xampppgsql.1bin
  • я пытаюсь создать базу данных $ createdb NEWDATABASE
  • Я получаю приглашение ввести пароль. это где я путаю, а не знаю что пароль.
    Я попробовал свой пароль пользователя окна, пароль для postgres супер пользователь, никто не работает. это сообщение об ошибке я получаю
    createdb: could not connect to database template1: FATAL: password authentication failed for user "R-61"

    кто-нибудь знает решение для этого?
    думаю поменять форму пользователя R-61 на postgres суперпользователя будет работать, но я не знаю как это сделать.

ваша помощь очень нужна.

2
задан Collizo4sky
26.04.2023 6:02 Количество просмотров материала 3196
Распечатать страницу

2 ответа

createdb Это команда, которая должна подключаться к серверу так же, как и любая другая команда клиента (даже при запуске на самом сервере), и поэтому требует подключения пользователя базы данных.

если пользователь базы данных не указан с помощью -U username вариант, он принимает ваше имя пользователя ОС, следовательно, ссылку на "R-61" в сообщении об ошибке. Запрашиваемый пароль является паролем несуществующего R-61 пользователь базы данных.

есть и другие варианты, такие как хост по умолчанию localhost и порт по умолчанию 5432 его страница руководства для всех из них.

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

Try createdb -U postgres newdatabase

он должен запросить пароль, и это будет пароль postgres пользователь базы данных.

если он не запрашивает пароль, это означает, что политика безопасности в pg_hba.conf настроен таким образом. Если пароль потерян (или пароль никогда не был установлен, что имеет место для некоторых автоматических установок, особенно в Unix),pg_hba.conf необходимо изменить и перезагрузить службу для авторизации соединений без пароля, по крайней мере временно, чтобы установить новый пароль.

2
отвечен Daniel Vérité 2023-04-27 13:50

У меня нет прямого опыта с этим, но я посмотрел на него, и я думаю, что это то, что вы ищете. Я нашел аналогичную проблему, которая предполагает, что PostgresSQL на Windows запрашивает пароль во время установки. Этот пароль, вероятно, является паролем учетной записи администратора PostgresSQL. Учетная запись администратора должна работать для подключения к этой базе данных и настройки разрешений для нее.

кроме того, отредактировать файл pg_hba.файл conf для доверия подключениям пользователей пользователи и расположения также должны позволять подключаться. Вы захотите исправить проблему разрешения и отменить отредактированный pg_hba.conf строчки.

Обсуждение я нашел это на: Re: пароль по умолчанию Документация на pg_hba.файл conf : 19.1. В файле pg_hba.файл conf

0
отвечен 2023-04-27 16:07

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх