2017-09-12 4 views
1

J'essaie de restaurer une sauvegarde sur mon ordinateur localhost pour examiner les données, afin de pouvoir vérifier que la sauvegarde fonctionne. J'utilise Heroku, postgres et rails.PG La fonction de restauration ne fonctionne pas sur localhost

J'ai nettoyé l'application, il n'y a donc pas de données dans la base de données localhost. J'ai couru db: reset, et db: migrer.

Voici la chaîne que je suis en train d'utiliser pour pg_restore:

pg_restore --verbose --clean --no-acl --no-owner -h localhost -p 3000 -U ian -d backup_production latest.dump 

L'erreur que je reçois dit:

« connexion à la base de données « backup_production » a échoué: serveur a fermé la connexion de façon inattendue »

Je n'ai jamais eu à le faire auparavant, donc toute aide serait appréciée. Je suppose que le développement est ce que localhost utilise (au lieu de test ou de production)?

Je ne suis pas sûr de ce qui me manque, mais je répondrai à toutes les questions que vous pourriez avoir.

Merci beaucoup.

éditer ,. Voici une question, pour cette chaîne de base de données, j'ai supposé que je devais utiliser toutes les informations localeshost, parce que j'ai créé une sauvegarde en utilisant capture/download heroku. Ai-je tort dans cette hypothèse? Devrais-je plutôt utiliser le nom de la base de données et le port, etc, à partir des informations d'identification heroku?

Répondre

0

Il s'avère que je n'aurais pas dû ajouter le port. Retrait -p 3000, a fait fonctionner cette commande.

0

Essayez cette

Modifier la saisie du fichier de configuration de postgre dans le terminal

sudo gedit /etc/postgresql/POSTGRE_VERSION/main/pg_hba.conf 

changer ensuite la configuration à ce

# Database administrative login by Unix domain socket 
local all    all          trust 

# 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 

Redémarrez votre serveur postgre

sudo /etc/init.d/postgresql restart 

Cela devrait être la solution pour accéder sans mot de passe