当前位置: 首页 > 知识库问答 >
问题:

如何将node.js连接到MySQL

何向荣
2023-03-14

我正在尝试将node.js连接到MySQL,但失败了。我已经安装了MySQL和相关库。如何解决此错误?另外,如果我想让数据响应为原生的,我应该如何去做呢?

const express = require('express');
const mysql = require('mysql');

const connection = mysql.createPool({
  host     : '*****',//aws db endpoint/MySQL hostname
  user     : 'administrator', // username of MySQL connection
  password : '*****', //pw of MySQL db
  database : 'database_3' // name of database to be used
});

const app = express();
app.get('/User', function (req, res) {
    connection.getConnection(function (err, connection) {
    connection.query('SELECT * FROM User', function (error, results, fields) {
      if (error) throw error;
      res.send(results)
    });
  });
});

// Starting our server.
app.listen(3306, () => {
    console.log('Go to http://localhost:3306/User');
   });
   

收到的错误消息:

events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE: address already in use :::3306
    at Server.setupListenHandle [as _listen2] (net.js:1279:14)
    at listenInCluster (net.js:1327:12)
    at Server.listen (net.js:1414:7)
    at Function.listen (C:\Users\Irvin\my-new-project\node_modules\express\lib\application.js:618:24)
    at Object.<anonymous> (C:\Users\Irvin\my-new-project\route.js:39:5)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
Emitted 'error' event at:
    at emitErrorNT (net.js:1306:8)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at Function.Module.runMain (internal/modules/cjs/loader.js:834:11)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)

共有1个答案

公孙驰
2023-03-14

错误:侦听EADDrinUse:address已在使用:::3306

这意味着端口3306已在使用中,请尝试将其更改为其他端口或停止在该端口上运行的进程。

// Lets change 3306 to 3307
app.listen(3307, () => {
    console.log('Go to http://localhost:3307/User');
});

如果您想要停止这个端口上的进程,下面是如何在linux上执行

 类似资料:
  • 我正在尝试将 kafka 与 windows 上的 mysql 连接起来。我没有使用汇合。我的 kafka 版本是 2.12 我已经启动了动物园管理员、Kafka、生产者和消费者,这一切都很好用。 我的MysQL版本是8.0.15 我已经在libs文件夹中复制了这3个jar文件 我的源代码quickstart mysql。属性文件代码为 当我运行命令时 我在控制台上收到此错误 请帮助我。 我也试过

  • 问题内容: 我的Java程序出现这些错误。我已经把我的类路径放在里面了。如何解决呢? 代码: 问题答案: 您需要从下载MySQL包:这里并将其放置在库中,我将修改在少数分钟excact步骤 这是连接数据库的正确语法: 希望这可以帮助

  • 问题内容: 我们知道不建议在Amazon实例外部访问ElastiCache,因此我们仅在Amazon EC2实例内部进行尝试。 我们有一个具有9个节点的ElastiCache Redis集群 。当我们尝试使用常规redis实现连接到它时,它会引发一些Moved错误 根据@Miller尝试了重试策略方法。还尝试过使用不稳定和稳定(可怜的人)实现的RedisCluster。 这些实现均无作用。有什么建

  • 我在我的运行系统中有MongoDB和Robomongo,我使用Robomongo作为客户端。 我已将MongoDB安装在另一个系统上,我将其视为服务器,我想将我系统的Robomongo(作为客户端)连接到另一个系统(服务器)上的MongoDB。我应该采取哪些步骤来实现同样的目标? 我使用的是机器名,因为系统的IP地址不是静态的。但即使我使用系统的IP地址,我也会遇到同样的错误: 连接失败,无法连接

  • 问题内容: 我已经安装了MySQL(最新更新)。我需要编写代码,这将创建并与SQL DB建立连接并管理DB(使用SELECT,INSERT,CREATE)。 我已完成所有操作,但无法建立连接。我还安装了MySQL / J连接器,我只是将包提取到一个文件夹中,并在 Variables中 添加了文件夹路径。 谁能告诉我下一行中的URL是wat的意思吗? 我已经试过了: 但这不起作用。我无法理解术语“

  • 我正在处理一个节点。js服务器,连接到MongoDB,用TypeScript编写。当我尝试使用MongoDB时,它不会创建连接,但是当我检查mongo输出时,它似乎确实创建了连接。 在节点中定义连接的代码中缺少了什么。js? 我的连接字符串是 我的连接方式: Mongo输出: 2018-11-08T23:06:24.106 0100网络[监听器]连接从127.0.0.1:51345#11接受(2个