Conforme apontado por Luuk, você precisa substituir o
localhost
com o endereço IP real do servidor de banco de dados remoto e a porta na qual o servidor de banco de dados está sendo executado. Por exemplo -
const database = mysql.createPool({
host: '123.234.121.234',
port : '3306',
user: 'user',
password: 'pass',
database: 'db'
});
Além disso, certifique-se de que a porta esteja na lista de permissões e possa ser acessada pela rede. Aqui está um pequeno diagrama para explicação.