V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
54dev
V2EX  ›  Node.js

请教个关于 NODE JS MYSQL 的初级问题

  •  
  •   54dev · 2015-01-19 00:52:32 +08:00 · 5811 次点击
    这是一个创建于 3595 天前的主题,其中的信息可能已经有所发展或是发生改变。
    var mysql      = require('mysql');
    var connection = mysql.createConnection({
      host     : 'localhost',
      user     : 'dbuser',
      port     : '3306',
      password : 'pwd',
      database : 'dbname'
    });
    
    connection.connect();
    
    connection.query('select * from tablename', function(err, rows, fields) {
      if (err) {
        console.log(err.message);
    }
    
      console.log('The solution is: ', rows);
    });
    
    connection.end();
    

    node filename.js
    执行后报错内容如下:

    { [Error: connect ETIMEDOUT]
      errorno: 'ETIMEDOUT',
      code: 'ETIMEDOUT',
      syscall: 'connect',
      fatal: true }
    

    想请教一下这是因为MYSQL的库没装好,还是哪写的代码有问题呢?

    14 条回复    2015-01-19 14:45:31 +08:00
    phoenixlzx
        1
    phoenixlzx  
       2015-01-19 00:54:26 +08:00 via Android   ❤️ 1
    建议:
    telnet localhost 3306
    54dev
        2
    54dev  
    OP
       2015-01-19 00:57:59 +08:00
    @phoenixlzx
    telnet localhost 3306
    Trying ::1...
    telnet: connect to address ::1: Connection refused
    Trying 127.0.0.1...
    telnet: connect to address 127.0.0.1: Connection timed out

    超时了,连不上。
    Septembers
        3
    Septembers  
       2015-01-19 01:06:13 +08:00   ❤️ 2
    1. 服务未启动
    2. 未安装成功
    54dev
        4
    54dev  
    OP
       2015-01-19 01:07:33 +08:00
    @Septembers 这两个问题都可以排除掉,因为我在WINDOWS上都能运行的很正常。
    现在移到服务器上就会出现这个问题。
    hging
        5
    hging  
       2015-01-19 01:17:00 +08:00   ❤️ 1
    @54dev =.= windows跟服务器明显不是一个机器. 然后你数据库服务器上有么? 明显没有.
    54dev
        6
    54dev  
    OP
       2015-01-19 01:23:46 +08:00
    @hging MYSQL装过了。服务器上除了NODE的脚本以外,还有PHP的项目在跑。
    54dev
        7
    54dev  
    OP
       2015-01-19 01:44:43 +08:00 via iPhone
    Google上面的有说是和mysql连接的问题,不知道是有库没装,服务没启动?
    thonatos
        8
    thonatos  
       2015-01-19 02:17:54 +08:00 via Android   ❤️ 1
    限制了连接数?
    typcn
        9
    typcn  
       2015-01-19 07:36:17 +08:00 via iPad   ❤️ 1
    其实 node 真心不推荐用 mysql , 难受的要死。
    redis mongodb都不错
    fan543
        10
    fan543  
       2015-01-19 09:12:49 +08:00   ❤️ 1
    我也出现了 这个问题,貌似是node-mysql库的bug,在github上面也有讨论
    Dongdong36
        11
    Dongdong36  
       2015-01-19 09:31:03 +08:00   ❤️ 1
    用Mongo吧
    phoenixlzx
        12
    phoenixlzx  
       2015-01-19 10:02:39 +08:00 via Android   ❤️ 1
    超时啊
    看看是不是iptables的问题
    54dev
        13
    54dev  
    OP
       2015-01-19 13:35:02 +08:00
    @phoenixlzx 不会啊,要是IPTABLES的问题,PHP的也会连接不上啊。
    phoenixlzx
        14
    phoenixlzx  
       2015-01-19 14:45:31 +08:00 via Android
    PHP跑在本机?127.1:3306 telnet 都连不上肯定是用不了的。iptables 和 MySQL 配置都检查下吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3463 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 04:35 · PVG 12:35 · LAX 20:35 · JFK 23:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.