Měl jsem podobný problém, kdy jsem dostával stejnou chybu.
Odpověď pro mě nakonec byla, že používám jiný port. Ve výchozím nastavení mysql očekává port 3306, ale používal jsem MAMP, kde byl port serveru MySQL specifikován jako 8889. Jakmile jsem přidal definici portu do svého připojení k databázi, bylo to v pořádku:
var connection = mysql.createConnection({
port: 8889,
user: 'root',
password : 'password',
database : 'my_database'
});
POZNÁMKA:Toto je pro Mac používající MAMP, nezkoušeli jsme to na ubuntu nebo Windows.