当前位置:首页 > Mysql教程 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2014-10-04 10:50:11 浏览: 评论:0 

项目中需要使用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表中的数据,代码如下:

  1. var mysql = require(‘db-mysql’); 
  2. new mysql.Database({ 
  3. hostname: ‘localhost’, 
  4. user: ‘root’, 
  5. password: ‘password’, 
  6. database: ‘test’ 
  7. }).connect(function(error) { 
  8. if (error) { 
  9. return console.log(‘CONNECTION error: ‘ + error); 
  10. }  //phpfensi.com 
  11. this.query(). 
  12. select(‘*’). 
  13. from(‘user’). 
  14. execute(function(error, rows, cols) { 
  15. if (error) { 
  16. console.log(‘ERROR: ‘ + error); 
  17. return
  18. for(var i=0;i<rows.length;i++){ 
  19. console.log(rows[i].name ); 
  20. }); 
  21. }); 

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

  1. throw e; // process.nextTick error, or ‘error’ event on first tick 
  2.  
  3. Error: Unable to load shared library /Users/wanzhang/WebstormProjects/ReadMysql/node_modules/db- 
  4. --代码如下 
  5. mysql/build/Release/mysql_bindings.node 
  6. at Object..node (module.js:472:11) 
  7. at Module.load (module.js:348:31) 
  8. at Function._load (module.js:308:12) 
  9. at Module.require (module.js:354:17) 
  10. at require (module.js:370:17) 
  11. at Object.<anonymous> (/Users/wanzhang/WebstormProjects/ReadMysql/node_modules/db-mysql/db-mysql.js:18:15) 
  12. at Module._compile (module.js:441:26) 
  13. at Object..js (module.js:459:10) 
  14. at Module.load (module.js:348:31) 
  15. at Function._load (module.js:308:12) 

解决方法:

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

然后再运行这个js文件,ok,会打印出表中数据,上面就是nodejs访问mysql一个简单例子.

Tags: nodejs访问mysql nodejs使用说明

分享到: