2017-09-27 14 views
0

私はSequelizeでPostgresデータベースに接続しようとしています。データベースに行を作成しようとすると、次のエラーメッセージが表示されます。私が接続しようとしているデータベースのURLがポート5432であるときに、ポートが3306のリストを表示している理由がわかりません。設定ファイルでポートとホスト名を設定しようとしましたが、同じエラーが表示されます。Sequelizeがpostgresサーバーに接続できません

{ 
    "name": "SequelizeConnectionRefusedError", 
    "message": "connect ECONNREFUSED 127.0.0.1:3306", 
    "parent": { 
     "code": "ECONNREFUSED", 
     "errno": "ECONNREFUSED", 
     "syscall": "connect", 
     "address": "127.0.0.1", 
     "port": 3306, 
     "fatal": true 
    }, 
    "original": { 
     "code": "ECONNREFUSED", 
     "errno": "ECONNREFUSED", 
     "syscall": "connect", 
     "address": "127.0.0.1", 
     "port": 3306, 
     "fatal": true 
    } 
} 

私はserver.jsファイルに私のアプリを実行している:

const express = require('express') 
const bodyParser = require('body-parser') 
const path = require('path') 
const fs = require('fs') 

const PORT = process.env.PORT || 3000 


// INSTANTIATE EXPRESS APP 
const app = express() 

app.use(bodyParser.urlencoded({ extended: true })) 
app.use(bodyParser.json({ 
    type: function() { 
    return true 
    } 
})) 

// SET VIEW ENGINE 
app.use(express.static(path.join(__dirname, 'public'))) 

require('./src/server/routes')(app) 

app.get('*', function(request, response) { 
    response.sendFile(path.resolve(__dirname, 'public', 'index.html')) 
}) 

// SET FOLDER TO SERVER STATIC ASSETS 
app.use(function(req, res, next) { 
    res.setHeader('Access-Control-Allow-Origin', '*'); 
    res.setHeader('Access-Control-Allow-Credentials', 'true'); 
    res.setHeader('Access-Control-Allow-Methods', 'GET,HEAD,OPTIONS,POST,PUT,DELETE'); 
    res.setHeader(
    "Access-Control-Allow-Headers", 
    "Access-Control-Allow-Headers, Origin, Accept, X-Requested-With, Content-Type, Access-Control-Request-Method, Access-Control-Request-Headers, Authorization, username") 
    //and remove cacheing so we get the most recent comments 
    res.setHeader('Cache-Control', 'no-cache'); 
    next(); 
}); 

// SERVER APP 
app.listen(PORT,() => { 
    console.log('Server running on localhost:' + PORT) 
}) 

私の設定ファイルは、精密検査の後、オンラインデータベース

{ 
    "development": { 
    "url": "postgres://[email protected]:5432/znjpptuy", 
    "dialect": "postgres", 
    "PORT": 5432, 
    "HOST": "127.0.0.1" 
    } 
} 

答えて

0

を使用するように設定が実現されますこのエラーは、私が後継の新しいインスタンスに渡していたURL、この場合はURLの不足と関係していたことになります。

sequelize = new Sequelize(process.env [config.url]);

process.envは未定義として戻ってきたので、実際のURLを関数に渡してしまいました。

関連する問題