Postgres sur Rails FATAL: la base de données n'existe pas
j'ai réinstallé Postgres (9.2.4) et j'ai du mal à le remettre en place avec les Rails 3.2.11. J'ai fait:
brew install postgresql
initdb /usr/local/var/postgres
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
alors maintenant j'ai
$ psql --version
psql (PostgreSQL) 9.2.4
$ which psql
/usr/local/bin/psql
Ma base de données.fichier yml ressemble
development:
adapter: postgresql
encoding: unicode
database: myapp_development
pool: 5
username: Tyler
password:
host: localhost
port: 5432
Et quand je lance rake db:create:all
rake db:migrate
j'obtiens l'erreur:
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
j'ai essayé d'effacer tout ce qui concerne le passé db, les migrations, etc.
j'ai supprimé le schéma.rb, de la graine.rb, et tous les fichiers du dossier migrations, et autre chose que je peux penser. Mais l'erreur concernant les " posts "me fait penser qu'il y a encore une vieille référence à ma base de données précédente (qui avait un tableau appelé"posts").
est-ce que quelqu'un sait comment résoudre cette erreur, en essayant de réinstaller complètement/rafraîchir ma base de données?
4 réponses
j'avais un problème similaire.
J'ai vérifié différents sites Web et essayé ce qu'ils ont suggéré mais ça n'a pas marché.
Ensuite, j'ai essayé ce que vous avez suggéré.
rake db:create:all
et rake db:migrate
il a travaillé pour moi. Je vous remercie!
vous devez d'abord créer les bases de données. Lancer rake db:create:
assurez-vous également que votre fichier yml est configuré correctement pour postgres.
db:create:all
et db:migrate
n'a pas fonctionné pour moi en premier.
J'ai changé mon nom de base de données de development.pg
developmentpg
myapp/config/database.yml
fichier:
base de données: db / developmentpg
et rake db:create:all
et rake db:migrate
, ça a marché pour moi.
Merci
j'ai essayé d'exécuter rake db: create: all, ce qui n'a pas fonctionné. Toutefois, l'exécution de bundle exec rake db: create: tous a travaillé pour moi.
Espérons que cette aide!