【发布时间】:2013-09-17 22:18:20
【问题描述】:
我有以下代码,我正在尝试运行。我已经相应地给了 cmets 提及我所尝试的所有内容。
// File saved as app.js
var mysql = require('mysql');
var connection = mysql.createConnection({
host:'localhost', //even tried with 127.0.0.1
port:3306, //confirmed port by looking into /etc/mysql/my.cnf has [client] port = 3306
user:'root', //credentials are verified since Php My Admin logs in with same
password:'password' //credentials are verified since Php My Admin logs in with same
//Even tried to connect using _socket: '/var/run/mysqld/mysqld.sock'
});
connection.connect(function(err) {
// connected! (unless `err` is set)
if(err)
console.log(err); return;
});
由于默认端口未更改,因此 phpMyAdmin 对我来说工作正常。但我无法使用来自Node.js 的node-mysql driver 进行连接。
以下是我收到的错误消息:
amolkulkarni@ubuntu:~/Project/Node_MySQL$ node app.js
{ [Error: connect ECONNREFUSED]
code: 'ECONNREFUSED',
errno: 'ECONNREFUSED',
syscall: 'connect',
fatal: true }
有人可以帮忙吗?
更新:基于 cmets
amolkulkarni@ubuntu:~/ ps ax | grep mysqld
5905 ? S 0:00 sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking
5906 ? Sl 0:12 /usr/sbin/mysqld --skip-grant-tables --skip-networking
28964 ? Ssl 0:00 /usr/sbin/mysqld
29098 pts/3 S+ 0:00 grep --color=auto mysqld
我可以使用mysql -hlocalhost -uroot -ppassword 连接到 mysql,但如果我替换为 ip,例如mysql -h192.168.1.10 -uroot -ppassword 报错如下:
错误 2003 (HY000):无法连接到“192.168.3.78”上的 MySQL 服务器 (111)
【问题讨论】:
-
我已经看过这个Question。我没有得到答案及其不同的问题..
-
你可以使用命令行客户端连接吗?在你的情况下,
mysql -h 127.0.0.1 -u root -ppassword? -
@AndreySidorov 感谢您的宝贵时间。它的抛出错误
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111) -
没有“-h”键可以连接吗?另外,“ps ax | grep mysqld”的输出是什么?
-
@AndreySidorov 现在,我可以使用
mysql -hlocalhost -uroot -ppassword进行连接。并更新了我的问题。
标签: mysql node.js node-mysql