CNode

mysql模块安装后,进行第一次连接,请问user 跟 pw 是多少? database需要写上吗?

Wwhisht发布于14 年前最后回复14 年前16 回复8889 浏览0 收藏
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)

W
whisht#1·14 年前
引用 whisht我现在才知道需要mysql客户端支持。。。那天也是巧,刚好开着lamp环境在做。 原谅无知的小白吧。。。让你们贱笑了。

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

J
j4cnodejs#2·14 年前
引用 whisht我现在才知道需要mysql客户端支持。。。那天也是巧,刚好开着lamp环境在做。 原谅无知的小白吧。。。让你们贱笑了。

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

J
j4cnodejs#3·14 年前
引用 whisht我现在才知道需要mysql客户端支持。。。那天也是巧,刚好开着lamp环境在做。 原谅无知的小白吧。。。让你们贱笑了。

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

W
whisht#4·14 年前

谁给解惑下呀

J
jiyinyiyong#5·14 年前

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

W
whisht#7·14 年前

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

J
j4cnodejs#8·14 年前

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

J
j4cnodejs#9·14 年前

如果 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',});

W
whisht#10·14 年前
J
j4cnodejs#13·14 年前
引用 j4cnodejs可能是mysql 未运行, 所以连接不上mysql

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

W
whisht#14·14 年前
引用 j4cnodejs可能是mysql 未运行, 所以连接不上mysql

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

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

W
whisht#15·14 年前

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

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

J
j4cnodejs#16·14 年前
引用 whisht我现在才知道需要mysql客户端支持。。。那天也是巧,刚好开着lamp环境在做。 原谅无知的小白吧。。。让你们贱笑了。

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

参与回复
登录后即可参与回复。登录