找不到模块`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

  • Loopback +连接多个数据库
  • 从mysql中删除 - angular度nodejs
  • 使用node-mysql从heroku节点应用程序连接到Amazon RDS数据库
  • NodeJS,将数据存储在MySQL和PostgreSQL的SQLite中
  • Sails.js:生产env + sails-mysql - 数据库表不是在升降机上创build的
  • OAuth2从数据库中删除令牌
  • 如何为MySQL模型创buildGraphQL模式?
  • Sequelize.js:查询没有关系的对象
  • 我刚碰到相同的问题,发现是因为模块安装在:

    ./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文件。