Когда я выполняю heroku db: pull, он находит мой локальный dev db по адресу:
postgres://127.0.0.1/myapp_development?encoding=utf8
как только я подтверждаю, это не с:
Sequel::DatabaseConnectionError -> PGError: fe_sendauth: no password supplied
Я попытался запустить тягу с указанием локальной базы данных, например,
heroku db:pull postgres://root:@localhost/db_name
, которая выдает ту же ошибку без пароля.
Я подумал, что мне может понадобиться изменить root: на myname: потому что это пользователь, которому я предоставил права суперпользователя при настройке postgres, но ни root:, ни myname: не работают
Мой database.yml имеет имя пользователя: и пароль: пусто для всех указанных баз данных.
В командной строке под именем myname @ ubuntu я могу набрать psql myapp_development, подключиться нормально и запустить select.
Что мне здесь не хватает?
Это связано с моими настройками pg_hba.conf? Я заглянул внутрь и там написано:
# Database administrative login by UNIX sockets
local all postgres ident
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all ident
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Должно ли здесь использоваться слово "доверенный"? И если так, если я редактирую этот файл, мне нужно перезапустить postgres? И если необходимо «доверие», то почему рельсы и инструменты командной строки psql работают без паролей при входе в систему под моим именем myname?
Спасибо!