开发者社区> 问答> 正文

nodejs安装了mysql找不到库?报错

执行前先安装了mysql模块

npm install mysql

执行完后在D:\nodejs\node_modules中生成了一个mysql目录,这个目录里面还有一个npm目录

D:\nodejs就是nodejs安装的目录

test.js文件如下

var mysql = require('mysql');
var connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'root',
    database:'test'
});

connection.connect();
//查询
connection.query('select * from `test`', function(err, rows, fields) {
    if (err) throw err;
    console.log('查询结果为: ', rows);
});
//关闭连接
connection.end();



执行这个文件

node test.js之后报错

module.js:327
    throw err;
    ^

Error: Cannot find module 'mysql'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (E:\nodejs\yy.js:1:75)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Function.Module.runMain (module.js:441:10)



按照网上找的资料,将npm按照的mysql放到node_modules目录下不行,windows/system32下也不行,设置了NODE_PATH还是不行(执行报错,是另外一个错误了)


代码如下:


var mysql = require('mysql');
var connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'root',
    database:'test'
});

connection.connect();
//查询
connection.query('select * from `test`', function(err, rows, fields) {
    if (err) throw err;
    console.log('查询结果为: ', rows);
});
//关闭连接
connection.end();




展开
收起
爱吃鱼的程序员 2020-06-08 19:50:13 649 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

     用npminstallmysql-g 试一下


    一般较底层的版本变动较少的库,工具类可以安装成全局

    业务代码,更新比较频繁的安装到项目目录

    回复 @超级呆子:重装安装一下npm,可能你的环境变量已经搞乱了还是不行啊,像http这样的系统模块放在那里,我将mysql的拷贝到系统模块一起可以吗?
    2020-06-08 19:50:27
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
探究 Node.js 的服务端之路 立即下载
个推微服务实践 基于OpenResty 和Node.js 立即下载
沪江基于Node.js大规模应用实践 立即下载

相关镜像