【发布时间】:2020-06-08 21:53:49
【问题描述】:
我通过 UNIX 套接字在远程服务器上有一个 mysql 数据库,并且我将 node.js 部署在同一服务器的不同目录中。我尝试将 node.js 与数据库连接,但我有问题。
我的连接代码:
const database = mysql.createPool({
host: '127.0.0.1', // is host for mysql database on remote server
port: 3306,
user: 'fake_user',
password: 'fakse_pass',
database: 'fake_db'
});
database.getConnection(function (err, connection) {
if (!err) {
console.log('Database is connected ...');
} else {
console.log('Error connecting database ...');
console.log(err);
}
});
在这里,我为用户、密码和数据库设置了一个假凭据。我使用的凭据是有效的。我在远程服务器上登录了 phpMyAdmin。
包.json
{
"name": "socket-server",
"version": "1.0.0",
"description": "",
"main": "server.js",
"scripts": {
"start": "node server.js"
},
"engines": {
"node": "12.16.0"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"@mysql/xdevapi": "8.0.19",
"express": "^4.17.1",
"mysql": "^2.10.2",
"mysql2": "^2.1.0",
"socket.io": "^2.3.0"
},
"devDependencies": {
"gulp": "^4.0.2"
}
}
本地: 节点版本:12.16.0 npm 版本:6.13.4
远程服务器: 节点版本:12.16.1 npm 版本:6.13.4
当我在本地运行时
有人知道如何解决这个问题吗?
【问题讨论】:
-
在服务器上运行 server.js 时,向我返回:错误:主机 '127.0.0.1' is not allowed to connect to this MariaDB server at Packet.asError跨度>