首页 > 解决方案 > 无法使用 node.js 连接到 cpanel 的 phpmyadmin 数据库

问题描述

我开始为涉及使用表的项目试验和探索 node.js。到目前为止,我已经在 cpanel 中创建了一个 MySQL 用户和数据库,并授予用户对数据库的完全访问权限。我已阅读 npm mysql 的文档,但无法建立连接,已尝试添加套接字路径但仍无法正常工作,不胜感激。

节点.js

var express = require('express');
var app = express();
var mysql = require('mysql');

var con= mysql.createConnection({
    connectionLimit : 100,
        host     : 'localhost',
        port     :  3306,
        user     : '*******',
        password : '*******',
        database : '*******',
});

con.query('SELECT * FROM users', function(err, results) {
  if(err){
    console.log('Query error: ', err);
    return;
  }
  console.log(results);
});

错误信息

Query error:  Error: connect ECONNREFUSED 127.0.0.1:3306
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1146:16)
    --------------------
    at Protocol._enqueue (E:\Pharmabot\node_modules\mysql\lib\protocol\Protocol.js:144:48)
    at Protocol.handshake (E:\Pharmabot\node_modules\mysql\lib\protocol\Protocol.js:51:23)
    at Connection.connect (E:\Pharmabot\node_modules\mysql\lib\Connection.js:116:18)
    at Connection._implyConnect (E:\Pharmabot\node_modules\mysql\lib\Connection.js:454:10)
    at Connection.query (E:\Pharmabot\node_modules\mysql\lib\Connection.js:196:8)
    at Object.<anonymous> (E:\Pharmabot\database\dbconnect.js:14:5)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14) {
  errno: -4078,
  code: 'ECONNREFUSED',
  syscall: 'connect',
  address: '127.0.0.1',
  port: 3306,
  fatal: true
}
}

标签: mysqlnode.js

解决方案


有一些很棒的包,你必须先尝试主题。有一些包支持所有数据库服务器语言,如 sql、mysql2、mongodb、postgres 等。


推荐阅读