nodejs访问mysql数据库使用说明详解

作者:袖梨 2022-11-14

项目中需要使用mysql数据库,下面就介绍下怎么访问mysql

这里我使用的mac进行开发的,首先需要下载mysql

地址:http://dev.mysql.com/downloads/mysql/

参考这篇安装http://dev.mysql.com/doc/refman/5.0/en/macosx-installation.html

安装完成后可以在偏好设置里面看到mysql,通过这个可以启动关闭mysql。

默认安装完成后,数据库的root用户是没有密码的。

为了方便操作,这里我又安装了一个mysql的图形化操作工具sequelpro
下载地址:http://www.sequelpro.com/download/

安装成功并且登陆后的界面如下图所示:

以root登录后可以给root用户加上密码。

上面是对mysql安装进行了简单的介绍。下面介绍下怎样使用nodejs访问mysql

创建express项目,这里我使用的db-mysql

官方网址:http://nodejsdb.org/db-mysql/

根据它上面的介绍

在这之前需要在命令行中运行下面这个命令:

代码如下 复制代码

export MYSQL_CONFIG=/usr/local/mysql/bin/mysql_config

然后安装db-mysql

代码如下 复制代码

npm install db-mysql

然后编写一个js文件,这里我参考官方例子,自己写了一个读取mysql中的test数据库中user表中的数据:

代码:

代码如下 复制代码

var mysql = require(‘db-mysql’);
new mysql.Database({
hostname: ‘localhost’,
user: ‘root’,
password: ‘password’,
database: ‘test’
}).connect(function(error) {
if (error) {
return console.log(‘CONNECTION error: ‘ + error);
}
this.query().
select(‘*’).
from(‘user’).
execute(function(error, rows, cols) {
if (error) {
console.log(‘ERROR: ‘ + error);
return;
}
for(var i=0;i console.log(rows[i].name );
}

});
});

很简单,然后我用行这个js,但是出现了问题:

throw e; // process.nextTick error, or ‘error’ event on first tick
^
Error: Unable to load shared library /Users/wanzhang/WebstormProjects/ReadMysql/node_modules/db-

代码如下 复制代码
mysql/build/Release/mysql_bindings.node
at Object..node (module.js:472:11)
at Module.load (module.js:348:31)
at Function._load (module.js:308:12)
at Module.require (module.js:354:17)
at require (module.js:370:17)
at Object. (/Users/wanzhang/WebstormProjects/ReadMysql/node_modules/db-mysql/db-mysql.js:18:15)
at Module._compile (module.js:441:26)
at Object..js (module.js:459:10)
at Module.load (module.js:348:31)
at Function._load (module.js:308:12)


解决方法:

export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/

然后再运行这个js文件,ok,会打印出表中数据。

上面就是nodejs访问mysql一个简单例子。

相关文章

精彩推荐