mysql模块安装后,进行第一次连接,请问user 跟 pw 是多少? database需要写上吗?
发布于 3年前 作者 whisht 2908 次浏览
var db_options = {
host: 'localhost',
port: 3306,
user: 'root',
password: '',
database: 'test'
};
//加载mysql Module  
var mysql = require('mysql'),client = null;
if(mysql.createClient) {
client = mysql.createClient(db_options);
} else {
client = new mysql.Client(db_options);
client.connect(function(err) {
    if(err) {
        console.error('connect db ' + client.host + ' error: ' + err);
        process.exit();
    }
});
};

client.query(
'create table TestTable1 values(name varchar(50),' +
    'PhoneNum varchar(100))'
);

client.query(
'INSERT INTO TestTable1 '+
    'SET Name = ?, PhoneNum = ?',
['ceshi', '******']
);

client.query(
'SELECT * FROM TestTable1',
function selectCb(err, results, fields) {
    if (err) {
        console.log(2);
        throw err;
    }
    console.log(results);
    client.end();
}
);

为何总是提示我Error: connect ECONNREFUSED 昨天还好好的啊。

16 回复

谁给解惑下呀

楼主这个排版啊… 代码部分开头注意加四个空格缩进美化代码块
文档在这里: http://wowubuntu.com/markdown/
玩具在这里: http://docview.cnodejs.net/projects/textareaEditor/textMarkdown.html?html

哈哈,让您见笑了。 我就看到代码区块,稍微修改了下。请君赏析。

是不是菜鸟问题都不屑回答啊。。。

可能是mysql 未运行, 所以连接不上mysql

如果 mysql 已正常运行, 那么, 试试这两个方法:

  1. 编辑 mysql.conf, 将 skip-networking 注释掉.
  2. 这样设置 socket :

var client = mysql.createClient({ user: uuuu, password: pppp, host: '127.0.0.1’, port: '3306’, _socket: '/var/run/mysqld/mysqld.sock’,});

如何知道mysql运行没?

mysql.conf 有这个文件吗? 在哪里呢

@whisht : 看系统中正在运行的进程, 有没有mysqld 之类的

@j4cnodejs 下载完mysql模块,服务端引入模块后,在服务端写sql语句是不是无效?

我这边手动开启mysql的客户端(用于做PHP数据库),node.js终于没报连接不上了。 node是不是模块下载后实际还是需要客户端来支持?

我现在才知道需要mysql客户端支持。。。那天也是巧,刚好开着lamp环境在做。

原谅无知的小白吧。。。让你们贱笑了。

貌似不是你说的那样吧, 那天你应该是开着mysql "服务端"在测试, 这次你没开 mysql 服务. 至于客户端, nodejs + mysql client 模块不要求"mysql客户端程序"的支持. 不知道你能不能看懂?

@j4cnodejs 可是我今天开了客户端才可以。那天我有在调试php。昨天没开php环境,结果就不行。 你说的服务端指啥呢。

@whisht : 就是指 mysqld ,它会建立一个数据库服务器, 你的nodejs就能连上了. 如果连数据库服务器都没建立, nodejs当然无法连接数据库

@whisht : 我看了你的代码中 mysql server = localhost 也就是本机, 所以你在本机上运行 mysql 就是建立了一个数据库服务器,而不是"打开mysql客户端"

回到顶部