Ho avuto un problema simile, tutte le mie connessioni funzionavano ma dove ho ricevuto l'errore 'ER_ACCESS_DENIED_ERROR:accesso negato per l'utente ''@'localhost' (usando la password:NO) ' la mia chiamata è stata effettuata all'interno del middleware a livello di app.js, quindi i valori .env non erano ancora raggiungibili, per questo caso (potrebbe aiutare chi ha il mio stesso problema) ho dovuto aggiungere:
require('dotenv').config();
All'interno del file di connessione in questo modo:
const mysql = require('mysql')
require('dotenv').config();
const connectionLog = mysql.createPool({
connectionLimit : 10,
host: process.env.DB_HOST_LOG,
user: process.env.DB_USER,
password: process.env.DB_PASSWORD,
database: process.env.DB_DATABASE,
port:process.env.DB_PORT
})
Per me è stata la risoluzione.