I use a local installation of MySQL to develop my sites, and I often write small programs to manipulate the database directly. Everything works ok locally, but when I try to do the same thing in the remote MySQL installation, I get the error Unable to connect to any of the specified MySQL hosts.
Access to remote MySQL servers may be restricted for security purposes. However, MySQL Workbench, a must-have tool for anyone that is involved with MySQL, could connect to my site.
Finally, after a lot of experimentation and digging in the internet, I found that adding persist security info=false in the connection string solved the problem. The connection string in VB.NET is something like this: