2013-08-01 7 views
38

database.yml:fe_sendauth: brak hasła dostarczane

# SQLite version 3.x 
# gem install sqlite3 
# 
# Ensure the SQLite 3 gem is defined in your Gemfile 
# gem 'sqlite3' 
development: 
    adapter: postgresql 
    encoding: utf8 
    database: sampleapp_dev #can be anything unique 
    #host: localhost 
    #username: 7stud 
    #password: 

    #adapter: sqlite3 
    #database: db/development.sqlite3 
    pool: 5 
    timeout: 5000 

# Warning: The database defined as "test" will be erased and 
# re-generated from your development database when you run "rake". 
# Do not set this db to the same as development or production. 
test: 
    adapter: postgresql 
    encoding: utf8 
    database: sampleapp_test #can be anything unique 
    #host: localhost 
    #username: 7stud 
    #password: 
    #adapter: sqlite3 
    #database: db/test.sqlite3 
    pool: 5 
    timeout: 5000 

production: 
    adapter: postgresql 
    database: sampleapp_prod #can be anything unique 
    #host: localhost 
    #username: 7stud 
    #password: 
    #adapter: sqlite3 
    #database: db/production.sqlite3 
    pool: 5 
    timeout: 5000 

pg_hba.conf:

# TYPE DATABASE  USER   ADDRESS     METHOD 

# "local" is for Unix domain socket connections only 
local all    all          trust 
# IPv4 local connections: 
host all    all    127.0.0.1/32   trust 
# IPv6 local connections: 
host all    all    ::1/128     trust 
# Allow replication connections from localhost, by a user with the 
# replication privilege. 
#local replication  postgres        md5 
#host replication  postgres  127.0.0.1/32   md5 
#host replication  postgres  ::1/128     md5 

I zmieniła sposób w pierwszych trzech linii z md5 zaufać, ale nadal pojawia się błąd .

I bez względu na to, co kombinacje rzeczy staram się database.yml, kiedy zrobić:

~/rails_projects/sample_app4_0$ bundle exec rake db:create:all 

zawsze pojawia się błąd:

fe_sendauth: no password supplied

Śledziłem ten poradnik, aby uzyskać konfigurację rzeczy :

https://pragtob.wordpress.com/2012/09/12/setting-up-postgresql-for-ruby-on-rails-on-linux

Mac OSX 10.6.8 
PostgreSQL 9.2.4 installed via enterpriseDB installer 
Install dir: /Library/PostgreSQL/9.2 
+1

I ponownie załadowałeś plik pg_hba.conf po wprowadzeniu zmian? – bma

+0

@bma, Jak go ponownie wczytać? Jedynym sposobem, w jaki udało mi się połączyć się z serwerem, jest użycie pgAdmin3 (w wersji 9.2). Wybieram serwer, klikam prawym przyciskiem, a następnie wybieram Connnect. Tak więc, próbując ponownie załadować plik conf, odłączyłem się od serwera w pgAdmin3, a następnie ponownie się połączono. – 7stud

+2

Możesz wysłać zapytanie: 'wybierz pg_reload_conf()' jako superużytkownik, lub w pgadmin możesz kliknąć prawym przyciskiem myszy nazwę bazy danych, następnie kliknij "Załaduj ponownie konfigurację" (Myślę, że to właśnie robi, nie używam pgadmin) – bma

Odpowiedz

43

Po wprowadzeniu zmian w plikach pg_hba.conf lub postgresql.conf należy ponownie załadować klaster, aby pobrać zmiany.

Z wiersza poleceń: pg_ctl reload

Od wewnątrz db (jako administrator): select pg_reload_conf();

Od pgAdmin: Kliknij prawym przyciskiem nazwę db wybierz "Reload Konfiguracja"

Uwaga: przeładowanie nie jest wystarczający dla zmian, takich jak włączanie archiwizacji, zmiana shared_buffers itd. - te wymagają restartu klastra.

+1

Mam pytanie uzupełniające: O ile wiem, nigdy nie uruchomiłem żadnego serwera. Jedyną rzeczą, którą zrobiłem, było zainstalowanie Postgress z instalatorem Mac OSX. Potem spędziłem godziny próbując dowiedzieć się, jak korzystać z postgres bez powodzenia. Właśnie znalazłem pgAdmin3 w katalogu /Library/PostgreSQL/9.2, więc kliknąłem na niego. Więc jak zaczął się serwer? I czy muszę to zatrzymać? – 7stud

+2

Prawdopodobnie rozpoczęło się po instalacji zakończonej przez instalatora (większość instalatorów/pakietów, które widziałem). – bma

+0

Czy muszę to zatrzymać? Jak mogę to zrobić? Nie lubię instalatora, ponieważ jestem przyzwyczajony do korzystania z wiersza poleceń. – 7stud

Powiązane problemy