节点+ MySQL [ECONNREFUSED 127.0.0.1:3306]

时间:2018-10-31 14:15:25

标签: javascript mysql sql vue.js

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

我已成功连接,例如从我的代码中获取消息“已连接到MySQL服务器”,以表明在运行节点connect.js

时它已连接

但是当我尝试下一步时,例如创建一个简单的选择查询并在控制台中显示结果,我收到“错误:连接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文件有问题吗?还是与数据库的配置有关?

谢谢。

1 个答案:

答案 0 :(得分:0)

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