Node + MySQL [ECONNREFUSED 127.0.0.1:3306]



我正在Vue中进行一个项目,在该项目中,我使用Node连接到一个现有的MySQL数据库。

我已经成功连接,例如,当我运行节点connect.js时,从我的代码中获得消息"connected to the MySQL Server"以显示它已连接


但当我尝试下一步(如创建一个简单的选择查询并在控制台中显示结果(时,我会收到"error:connect ECONNREFUSED 127.0.0.1:3306">消息。

我已经研究了有类似问题的人的其他问题,修复方法是

  1. 确保数据库正在运行
  2. 添加端口
  3. 应用程序套接字路径我尝试过这些解决方案,但错误占了上风。

    CONNECT.JS

    let mysql = require('mysql');
    let connection = mysql.createConnection({
    host: '<myhostname>',
    user: '<myusername>',
    password: '<mypass>',
    database: '<mydb>',
    port: '3306',
    socketPath: '/var/lib/mysql/mysql.sock'
    })
    connection.connect(function(error){
    if (error){
    return console.error('error: ' + error.message)
    }
    console.log('Connected to the MySQL Server')
    })
    

    SELECT.JS

    let mysql = require('mysql')
    let config = require('./connect.js')
    let connection = mysql.createConnection(config)
    let sql = 'SELECT * FROM student'
    connection.query(sql,(error,results,fields) => {
    if(error){
    return console.error('error: ' + error.message)
    }
    console.log(results)
    })
    connection.end()
    

select.js文件有问题吗?还是与数据库的配置有关?

谢谢。

通过在select.js文件中的查询之前包含完整的连接配置来修复此问题。

相关内容

最新更新