我在服务器上使用CentOS,node.js引发错误
CONNECTION error: { [Error: ER_ACCESS_DENIED_ERROR: Access denied for user 'root'@'localhost' (using password: YES)]
code: 'ER_ACCESS_DENIED_ERROR',
errno: 1045,
sqlState: '28000',
fatal: true }
我在Ubuntu上的本地版本不会引发此错误,并且php可以使用相同的凭据连接到该数据库。
我使用此代码连接到数据库
var connect_params = require('./connect');
var express = require('express'),
app = express(),
mysql = require('mysql'),
connectionpool = mysql.createPool(connect_params.connection);
和我的connect.js
var connection = {
host: 'localhost',
user: 'user',
password: 'password',
database: 'mydb'
};
exports.connection = connection;
最佳答案
在我的情况下,指定portnumber
是可行的,就像我以前使用hostname:portname
(来自JDBC API)与我的本地数据库连接一样。
因此,通过指定portnumber
作为其自己的变量,而不是将其附加到hostname
上,您也许可以连接到它。
让我知道它是否无效。
var connection = mysql.createConnection({
host : "hostname",
port : "portnumber",
user : "username",
password : "password",
database : "dbname"
});