2016-07-25 16 views
2

Knex:Error Pool2 - Error: connect ECONNREFUSED 127.0.0.1:5432のリモートpostgresデータベースに対してknex seed:runを実行しようとすると、次のエラーが発生します。knexシードを試行したときにエラーが発生しました:knexが成功した後に実行します。migrate:リモートデータベースの最新のバージョン

私はknex migrate:latestを正常に実行することができ、テーブルが私のpostgresサーバー上に作成されていることがわかりますが、シードしようとするとそのエラーが発生します。ローカル設定と同じマイグレーション/シードファイルを実行しましたが、問題なく動作しましたが、私のheroku postgresインスタンスをシードしようとすると、このエラーがスローされます(ローカルのpgサービスは、新しいデータベースをシードして、エラーを投げている可能性があります)。

指定されたdbの代わりにlocalhostに接続しようとしている理由についてのご意見はありますか?以下に提供されるファイルのサンプル:

var User = require("./models/User"); 
var Project = require("./models/Project"); 

exports.seed = function(knex, Promise) { 
    console.log(knex.client.config.connection); //This returns the correct db info. 
    return knex('user').del() 
    .then(function() { 
     return knex('project').del() 
    }).then(function() { 
     return new User({id: 1, firstName: "James", lastName: "Lee", phone: "123-456-2000", email: "[email protected]"}).save(null, {method: "insert"}); 
    }).then(function() { 
     return new Project({id: 1, name: "Test"}).save(null, {method: "insert"}); 
    }) 
}; 
+0

こんにちは、あなたのkexfile.js、1つまたは2つの移行といくつかのシードをサンプルできますか?私はちょうど推測ですが、おそらく種子が約束やビルダーを返さないかもしれない、バグのために間違ったプロファイルを取得している可能性があります。 – Sombriks

+0

応答のおかげで、私はメインポストにいくつかのコードを追加しました。 – James

答えて

0

これは、移行/シードの設定方法のために発生したようです。構成は実際には2つの異なる場所から取り出されました。正しい場所に正しいSSL設定があり、もう1つは設定されていません(シードファイル)。両方の場所で正しい設定を追加すると、問題が解決されたようです。

関連する問題