events.js:187 throw er; // Unhandled 'error' event ^ Error: connect ETIMEDOUT at Co

在运行nodejs 文件时,报如下错误:

events.js:187
      throw er; // Unhandled 'error' event
      ^

Error: connect ETIMEDOUT
    at Connection._handleConnectTimeout (C:\Users\123\Desktop\wechatserver\node_modules\mysql\lib\Connection.js:409:13)
    at Object.onceWrapper (events.js:299:28)
    at Socket.emit (events.js:210:5)
    at Socket._onTimeout (net.js:469:8)

查了好多资料都说是端口被占用,需要重新释放端口。可是,这个不是端口被占用问题,
这是数据库连接超时错误!
此时你要检查数据库连接地址是不是改了,

// 创建连接池
let config = {
    host: '192.168.1.116',  //这里时数据库连接的主机
    port: 3306,
    database: 'wechat',
    user: 'root',
    password: 'root'
}

我改变了host的值

// 创建连接池
let config = {
    host: '127.0.0.1', //改变host值之后
    port: 3306,
    database: 'wechat',
    user: 'root',
    password: 'root'
}

果然,上面的错误就解决了!
过程中也发现了一个问题,这个主机的ip也是不时会更改,刚开始查的时候是这一个,过几个月之后又是另一个IP很烦,所以就用127.0.0.1多好。

猜你喜欢

转载自blog.csdn.net/qq_44469200/article/details/104275534