2016-03-04 10 views
15

Stworzyłem projekt phoenix z przykładu hello za pomocą cyfrowego oceanu. Wprowadziłem nazwę użytkownika i hasło z pliku etc/motd.tail. Ciągle otrzymuję komunikat o błędzie poniżej. Jestem początkującym i z jakiegoś powodu po prostu nie mogę zainstalować ecto.Ecto Postgres instaluje błąd uwierzytelniania hasła nie powiodło się

** (Mix) nie mogłaby zostać utworzona baza danych Hello.Repo, powodem: psql: FATAL: uwierzytelniania hasła nie powiodło się dla użytkownika „eliksiru” FATAL: uwierzytelniania hasła nie powiodło się dla użytkownika „eliksiru”

Można użyć następujących poświadczeń bazy danych Postgress: * Użytkownik: elixir * Hasło: ***

zainstalować. Każda pomoc będzie doceniona.

Odpowiedz

6

Zakładam, że ten błąd występuje w zadaniu mix ecto.create?

Dzieje się tak, ponieważ Ecto używa psql do utworzenia bazy danych, jednak nie ma to już miejsca w nadchodzącym Ecto 2.0.

Poniższy GitHub problem pokazuje ten sam problem https://github.com/elixir-lang/ecto/issues/1207

Stosowny komentarz z fix jest https://github.com/elixir-lang/ecto/issues/1207#issuecomment-172570064:

Moja baza config (pg_hba.conf) był najwyraźniej źle.

dla nikogo innego napotykają ten:

gospodarza wszystko my_user 127.0.0.1/32 zaufanie nie będzie działać hosta localhost wszystko my_user zaufanie zadziała

Proszę sprawdzić swoją pg_hba.conf (prawdopodobnie w /etc/postsgresql/9.x/pg_hba.conf).

+0

Najpierw dziękuję za pomoc. Podjęto próbę edycji pliku pg_hba.conf (localhost trust). hosta localhost wszystko wszystkim zaufanie md5 ** (Mix) nie mogłaby zostać utworzona baza danych Hello.Repo, powodem: psql: FATAL: uwierzytelniania hasła nie powiodło się dla użytkownika „postgres” FATAL: uwierzytelniania hasła nie powiodło się dla użytkownika "postgres" –

+0

Właśnie stworzyłem nowy projekt phoenix w katalogu głównym, a następnie uruchomiłem mix ecto.create i działało. Dziękuję –

39

uzyskać ten sam błąd za pomocą Ubuntu 14.04 i poprawiłam resetowania hasła 'postgres':

$ sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';" 

i ponownie uruchomić usługę postgres'owy:

sudo service postgresql restart 
+3

, która zadziałała dla mnie .. dziękuję ... – VoidZero

+0

Pracowałem też dla mnie! – helcim

0

co potrzebne do aktualizacji do pg_hba.conf spraw, żeby to działało.

Używam Fedory, więc dostać się do/var/lib/pgsql/data

# "local" is for Unix domain socket connections only 
local all    postgres        peer 
local all    all          md5 
# IPv4 local connections: 
host all    all    127.0.0.1/32   md5 
# IPv6 local connections: 
host all    all    ::1/128     ident 

Potem stworzył eliksir użytkownika w PostgreSQL z możliwościami tworzenia databse i skonfigurowaniu go w dev.exs (użytkownik/hasło/baza danych)