我在服务器上使用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可以使用相同的凭据连接到此数据库。
我使用此代码连接到DB
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;
答案 0 :(得分:0)
在我的情况下指定portnumber
可以正常工作,就像我以前使用hostname:portname
(来自JDBC API)来连接我的本地数据库一样。
因此,通过将portnumber
指定为其自己的变量,而不是将其附加到hostname
上,便可以连接到它。
让我知道它是否无效。
var connection = mysql.createConnection({
host : "hostname",
port : "portnumber",
user : "username",
password : "password",
database : "dbname"
});