Eu tive um problema semelhante, todas as minhas conexões estavam funcionando, mas onde recebi o erro 'ER_ACCESS_DENIED_ERROR:Acesso negado para usuário ''@'localhost' (usando senha:NÃO) ' minha chamada foi feita dentro do middleware no nível do app.js, então os valores .env ainda não estavam alcançáveis, para este caso (poderia ajudar quem tem o mesmo problema que eu) tive que adicionar:
require('dotenv').config();
Dentro do arquivo de conexão assim:
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
})
Para mim foi a resolução.