Подтвердить что ты не робот

Postgres on Rails FATAL: базы данных не существует

Я переустановил Postgres (9.2.4), и у меня возникли проблемы с его настройкой с помощью Rails 3.2.11. Я сделал:

brew install postgresql
initdb /usr/local/var/postgres
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

Итак, теперь у меня

$ psql --version
psql (PostgreSQL) 9.2.4
$ which psql
/usr/local/bin/psql

Мой файл database.yml выглядит как

development:
  adapter: postgresql
  encoding: unicode
  database: myapp_development
  pool: 5
  username: Tyler
  password:
  host: localhost
  port: 5432

И когда я запускаю rake db:create:all, тогда rake db:migrate получаем ошибку:

PG::Error: ERROR:  relation "posts" does not exist
LINE 5:              WHERE a.attrelid = '"posts"'::regclass
                                    ^
:         SELECT a.attname, format_type(a.atttypid, a.atttypmod),
                 pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
          FROM pg_attribute a LEFT JOIN pg_attrdef d
            ON a.attrelid = d.adrelid AND a.attnum = d.adnum
         WHERE a.attrelid = '"posts"'::regclass
           AND a.attnum > 0 AND NOT a.attisdropped
         ORDER BY a.attnum

Я попытался очистить все, что связано с прошлым db, миграциями и т.д.

Я удалил schema.rb, seed.rb и все файлы в папке переноса и все, что я могу придумать. Но ошибка, относящаяся к "сообщениям", заставляет меня думать, что есть еще старая ссылка на мою предыдущую базу данных (в которой была таблица с названием "posts" ).

Кто-нибудь знает, как устранить эту ошибку при попытке полностью переустановить/обновить мою базу данных?

4b9b3361

Ответ 1

У меня была аналогичная проблема. Я проверил разные сайты и попробовал, что они предложили, но не работал. Затем я попробовал то, что вы предложили. rake db:create:all и rake db:migrate, это сработало для меня. Спасибо!

Ответ 2

Сначала вам нужно создать базы данных. Запустить rake db: create: all

Также убедитесь, что ваш yml файл настроен правильно для postgres.

Ответ 3

db: create: all и db: migrate не работает для меня в первую очередь. Я изменил имя своей базы данных с development.pg на developmentpg в файле myapp/config/database.yml:

database: db/developmentpg

а затем rake db: create: all и rake db: migrate, это сработало для меня.

Спасибо

Ответ 4

Я попробовал запустить rake db: create: all, который не работал. Однако работает   bundle exec rake db: create: all работал на меня.

Надеюсь, это поможет!