Невозможно установить postgres с помощью brew. Получить «ФАТАЛЬНАЯ: роль «postgres» не существует» независимо от того, какую команду я пытаюсь

#postgresql #homebrew

#postgresql #homebrew

Вопрос:

Я пытался установить postgres 13.1 на свой Mac с помощью homebrew. (Также пробовал версии 11 и 12, которые когда-то были установлены на этом Mac, но теперь сталкиваюсь с той же ошибкой с этими версиями). Я использую заметки, которые я взял из предыдущих установок и, конечно, google / stackoverflow. Пробовал много вещей / много раз, но всегда, если я запускаю psql, createuser, createdb (любую команду postgres), он отвечает:

ФАТАЛЬНЫЙ: роль «postgres» не существует

Также попробовал просто создать пользователя postgres на моем Mac, чтобы запустить установку из этой учетной записи; безуспешно.

Также пытался установить postgresql из enterprisedb.com сайт. Это сработало, но кажется неуклюжим и, похоже, полагается на скрипты .sh. Интересно, что после установки edb я также получил ошибку «роль postgres не существует«, но заметил, что если я просто дважды ввел «postgres» в командной строке, это сработало. Пример:

 /Library/PostgreSQL/13/bin/psql -h localhost -p 5432 -U postgres postgres
 

Этот трюк не работает с установкой brew.

Понимаю, мне нужно создать роль postgres, но я не могу найти команду для этого, которая не жаловалась бы на то, что роль еще не существует.

Любая помощь была бы очень признательна!

ссылка на скриншот

Комментарии:

1. какой пользователь ОС владеет файлом конфигурации и / или файлами данных? Попробуйте использовать это имя в качестве существующей роли базы данных.

Ответ №1:

Большинство сайтов, документирующих установку postgres с помощью homebrew, говорят, что используют такие команды, как:

psql postgres или createuser postgres

Это не сработало для меня, но это сработало:

 psql -d postgres -U <myUserName>
 

Прикрепляю скриншот, чтобы попытаться обобщить опыт установки и что сработало:
скриншот

Комментарии:

1. Спасибо, этот ответ сработал для меня на стр. 14.

Ответ №2:

Можете ли вы попробовать:

 /Library/PostgreSQL/13/bin/psql
 

и затем:

 CREATE USER postgres SUPERUSER;
 

?

Комментарии:

1. Спасибо. Попробовал /Library/PostgreSQL/13/bin/psql, но он вернул: -bash: /Library/PostgreSQL/13/bin/psql: такого файла или каталога нет. Но я думаю, что решил свою проблему. Сайты, которые я нашел, документирующие, как установить postgres с помощью homebrew, говорят использовать command: psql postgres но, похоже, так и должно быть psql -d postgres -U <myUserName> . (Большое спасибо за ответ! Это мой самый первый пост stackoverflow.)

2. Рад, что вы разобрались.