1

我是 node.js 和 express 框架的新手。我试图找出与外部数据库的连接,使用以下代码:

var mysql = require('mysql');

var client = mysql.createConnection({
    user: 'user',
    password: 'pass',
    host: 'db.myprovider.com',
    database: 'test_database'
});

module.exports = {
    getDataFromUserGps: function(callback){
        client.query("SELECT * FROM userGps", 
            function(err, results, fields) {
                if (err) return callback(err, null);
                console.log('results: ', results);
                return callback(null, results);
            }
        ); 
    }
}

我在这里称呼它:

mysql.getDataFromUserGps(function(err, mysqlResult){
    if(err) {
         console.log('mysql error', err);
    } else {
        console.log('mysqlResult', mysqlResult);
    }
});

这是我得到的:

mysql error { [Error: getaddrinfo ENOENT]
    code: 'ENOTFOUND',
    errno: 'ENOTFOUND',
    syscall: 'getaddrinfo',
    fatal: true }

这是我的问题。我已经阅读了有关此问题的常见解决方案,例如“开始时不使用“http””或 unix soet 可能存在的问题。但是,使用相同的配置,我可以使用 php 轻松连接,所以我想知道是否可以通过更改我的 node.js 应用程序中的 socet 以某种方式解决它?

提前致谢!

4

0 回答 0