找不到模块`mysql` node.js

我是nodejs的新手。 要连接mysql,我使用该命令在节点上安装了mysql

 npm install mysql 

安装时没有出现任何错误。 然后我试着执行下面的代码,

 var mysql = require("mysql"); 

但它试图执行该显示以下错误。

 C:\node\mysql>node app.js module.js:340 throw err; ^ Error: Cannot find module 'mysql' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Module.require (module.js:364:17) at require (module.js:380:17) at Object.<anonymous> (C:\node\mysql\app.js:1:75) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Function.Module.runMain (module.js:497:10) 

我尝试了一些build议像全局安装mysql使用,

 npm install -g mysql 

但没有任何工作。 请帮助!!!

请注意我的工作环境,

操作系统:Windows7节点版本:0.10.15 NPM版本:1.3.5

我刚碰到相同的问题,发现是因为模块安装在:

./node_modules/node-mysql/node_modules/

所以,我只是把他们全部搬走了:

mv ./node_modules/node-mysql/node_modules/* ./node_modules/

你可以解决这个问题

 ln -s /usr/local/lib/node_modules /YOURPROJECTFOLDER/node_modules 

我的node安装在C:\some-dir\nodejs-0.10.35\

首先导航到安装的目录nodecd C:\some-dir\nodejs-0.10.35

然后npm install mysql

我把我的应用程序放在同一个目录下: C:\some-dir\nodejs-0.10.35\applications\demo.js

有用。

看起来你可能会对npm install工作方式感到困惑。

npm install -g mysql将安装在全局本地化,就像你的build议。

npm install mysql将在本地安装,将模块放在./node_modules/mysql 。 这意味着您正在运行的脚本需要从包含node_modules的相同目录运行。

我遇到了同样的问题(授予我在Windows 8上)。 我试过npm install mysqlnpm install -g mysql ,都没有工作。

原来,我需要打开“Node.js命令提示符”应用程序,而不是常规的命令提示符应用程序。 一切都很好。

我不知道他们的命令提示符在底层,但我会认为它与path和环境variables有关。 你可能想尝试一下。

导航到主目录内的文件夹/node_modules ,并通过点击以下命令来sudo npm install mysqlsudo npm install mysql

这将在/node_modules文件夹中创build一个名为mysql的文件夹。

现在使用主文件夹中的node app.js命令运行您的应用程序。 它将工作并build立与mysal服务器的连接。

coderz这个解决scheme工作得很好。

我的节点安装在C:\ some-dir \ nodejs-0.10.35 \

首先导航到安装的目录节点:cd C:\ some-dir \ nodejs-0.10.35

然后npm安装mysql

我把我的应用程序放在同一个目录下:C:\ some-dir \ nodejs-0.10.35 \ applications \ demo.js

谢谢。

我发现这种情况发生,如果你运行npm安装没有在你的package.json中定义的依赖项…即

 ... "author": "Author", "dependencies" : { "mysql": "2.12.0", }, "license": "ISC" ... 

定义依赖关系,然后运行

 npm install 

npm安装mysql –save

这将更新你的package.json文件。