Puede que hayas especificado mal la combinación host/user/pass o puede que el usuario que quieres usar tenga sus permisos restringidos de modo que sólo puede acceder a la base de datos cuando se conecta desde un rango de IPs concreto.
La verdad es que se me hace difícil detectar ese tipo de errores