我正在尝试将node.js应用程序与mysql数据库连接起来,mysql数据库在远程服务器上非常适用于另一个应用程序,代码如下:
var mysql = require('mysql');
var con = mysql.createConnection({
host: "www.<dnw>.com",
port: <correct port number>,
user: "<correct Username>",
password: "<correct password>",
database: "<correct databasename>"
});
con.connect(function(err) {
if (err)
{
throw err;
}
});
con.end();
执行时,我得到一个错误消息
/home/akiku/node/dnwbot/main.js:49
throw err;
^
Error: connect ECONNREFUSED 85.25.34.68:3306
at Object._errnoException (util.js:1022:11)
at _exceptionWithHostPort (util.js:1044:20)
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1198:14)
--------------------
at Protocol._enqueue (/home/akiku/node/dnwbot/node_modules/mysql/lib/protocol/Protocol.js:145:48)
at Protocol.handshake (/home/akiku/node/dnwbot/node_modules/mysql/lib/protocol/Protocol.js:52:23)
at Connection.connect (/home/akiku/node/dnwbot/node_modules/mysql/lib/Connection.js:130:18)
at Object.<anonymous> (/home/akiku/node/dnwbot/main.js:46:9)
at promises.push.Promise (/home/akiku/node/dnwbot/node_modules/telebot/lib/telebot.js:439:29)
at new Promise (<anonymous>)
at TeleBot.event (/home/akiku/node/dnwbot/node_modules/telebot/lib/telebot.js:432:32)
at promise.then (/home/akiku/node/dnwbot/node_modules/telebot/lib/updates.js:92:33)
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
我所想的是:
我在phpmyadmin中通过sql查询多次检查了端口和主机。他们是对的。
我在plesk中启用了任何主机都可以访问数据库。
用户名和密码也正确。
它应该做什么:
显然只要连接到数据库。没别的了。
你有什么线索吗?
2条答案
按热度按时间bqjvbblv1#
检查您是否有权访问远程服务器数据库。请尝试使用workbench或任何其他工具进行连接
b4wnujal2#
我终于发现了问题:serveradmin在更深层次的服务器上阻塞了端口,而plesk无法访问该端口。