Rake db: настройка результатов в fe_sendauth без пароля
Когда я запускаю: rake db: setup
я получаю:
fe_sendauth: no password supplied
Couldn't create database for {"adapter"=>"postfresql", "encoding"=>"unicode",
"host"=>"localhost", "pool"=>5, "username"=>"my_user", "password"=>nil,
"database"=>"my_db_test"}
-- enable_extension("plpgqsl")
rake aborted
Tasks: TOP => db:schema:load
My database.yml:
connection: &connection
adapter: postgresql
encoding: unicode
host: localhost
pool: 5
username: my_user
password:
development:
<<: *connection
database: my_db_development
test: &test
<<: *connection
database: my_db_test
Уже измените мой pg_hba.conf, как в этом вопросе: Попытка настроить postgres для приложения ror, получить ошибку - fe_sendauth: пароль не указан
Но это совсем не помогает.
Ответы
Ответ 1
Это проблема подключения к базе данных.
Попробуйте напрямую подключиться к базе данных, использующей ur. Если он запрашивает пароль, вы должны использовать тот же пароль в файле database.yml.
Проверить эту ссылку
http://guides.rubyonrails.org/configuring.html#configuring-a-postgresql-database
а также
Ruby on Rails: как я могу изменить database.yml для postgresql?
Надеемся, что эти ссылки помогут вам
Ответ 2
попробуйте указать, для какой среды вы хотите это сделать, например:
RAILS_ENV=test rake db:setup
Ответ 3
Друг мой, у меня была такая же проблема. Моему решению были добавлены учетные данные для каждой среды и включить хост в локальном хосте.
вот так:
development:
<<: *default
database: SM_development
username: user
password: xxxx
host: localhost
test:
<<: *default
database: SM_test
username: user
password: xxxxxx
production:
<<: *default
database: SM_production
username: user
password: xxxxxx
Ответ 4
Попробуйте ввести "пустой" пароль с помощью кавычек:
password: ""
Ответ 5
no password supplied
означает, что требуется пароль, но вы не указали пароль. Добавьте правильный пароль в файл database.yml.
Ответ 6
если вы не хотите указывать аутентификацию, попробуйте удалить username:
password:
из файла .yml.
Ответ 7
no password supplied
означает, что вы не предоставили пароль на сервер posgresql
из своей базы данных .yml.
Попробуйте подключиться к серверу pgadmin или терминалу posgresql. Добавьте тот же пароль (который вы использовали для входа через терминал /pgadmin ) в ваш database.yml.
Теперь попробуйте:
RAILS_ENV=TEST bundle exec rake db:setup