Проблема с граблями: "база данных разработки не настроена" - PullRequest
7 голосов
/ 23 июля 2011

Я начинающий пользователь rails / терминала и только что сделал чистую установку Lion + Xcode + Rails. В отличие от ранее (на Snow Leopard), теперь я получаю сообщение об ошибке при запуске rake db: migrate.

Я клонировал свой код с помощью git, который работал нормально, и создал базу данных с помощью команды «createb», но когда я пытаюсь запустить «rake db: migrate» в терминале, теперь появляется эта ошибка:

rake aborted!
development database is not configured

Мой файл config / database.yml выглядит так, как показано ниже, в разделе разработки, и именно так он выглядел раньше на Snow Leopard, где он работал нормально, поэтому не знаю, связана ли полученная ошибка с Lion.

development:  
adapter: postgresql
database: my_db
username: rasmus
encoding: utf8
pool: 5

Может кто-нибудь помочь, пожалуйста?

Ответы [ 7 ]

19 голосов
/ 28 октября 2011

Я получил ту же ошибку, и в моем случае это произошло из-за того, что файл database.yml не был правильно заполнен. Все параметры конфигурации должны быть с отступом.

4 голосов
/ 27 февраля 2014

Примечание. Обязательно соблюдайте надлежащие интервалы. Конфигурация базы данных работает с пробелами. Два пробела на атрибут работает нормально. В следующем коде обратите внимание, как каждый атрибут имеет два пробела. Не используйте вкладки. Если вы не используете пробелы для атрибутов, rake не будет работать и выдает ту же ошибку.

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

test:
  adapter: sqlite3
  database: db/test.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: postgresql
  encoding: unicode
  database: db/production
  pool: 5
  timeout: 5000
  password:
2 голосов
/ 12 декабря 2014

Вы также можете искать синтаксические ошибки в файле. Это ошибка, которая появляется, если у вас есть синтаксическая ошибка в вашем файле config/database.yml, и вы пытаетесь сделать что-то вроде запуска локального веб-сервера или запуска rake db:migrate.

В моем случае я случайно удалил комментарий из строки в верхней части файла, и я увидел эту ошибку, поскольку незакомментированная строка сделала этот файл недействительным yml.

1 голос
/ 08 февраля 2018

Примечание для тех, кто попадает на эту страницу вопросов: убедитесь, что вы правильно запускаете команду rake db, т.е.:

rake db:migrate вместо rake db migrate

1 голос
/ 09 марта 2013

Вот ответ PEBCAK для Google: проверьте ваш Gemfile и убедитесь, что вы указали свой гем адаптера базы данных в соответствующей группе в Gemfile.Я определил мой только для :production и :staging, и в какой-то момент я должен был вручную запустить gem install pg на моей машине для разработки после переключения с mysql.Этим утром я опустошил все драгоценные камни для приложения и повторно bundle install -обработал их, затем не мог понять, почему база данных не будет соединяться.Перемещение спецификации pg gem за пределы какой-либо группы и запуск bundle install решили проблему.

1 голос
/ 24 июля 2011

Решено!

Мой "gem install pg" не был запущен, поэтому в основном мне не хватало pg gem.После "gem install pg" в терминале все работает нормально.

0 голосов
/ 30 августа 2015

Что сработало в моем случае, попробовав все вышеперечисленное при сбое rake db: create, было убедиться, что мой Rakefile был правильно настроен.

Это сделало свою работу:

require "sinatra/activerecord/rake"
require 'sinatra/asset_pipeline/task'

namespace :db do
  task :load_config do
    require "./app"
  end
end
...