Anyone using MySQL as a primary or secondary database system must checkout the MySQL Gotchas (a list of features or functions which work as advertised – but not as expected).
MySQL can be accessed from VB.NET using some managed class libs like MySQL Connexion, dotData or ADO.NET ODBC?itself. I’ve also used the MyVbQL API component for accessing MySQL from VB 6.0. Its thin, efficient and works well with unmanaged code. MyODBC on the other hand seems a little bulky (IMO) and slower, specially for distributed applications.
Before designing?the data access layer (over MySQL), be sure to read Exploring MySQL in the Microsoft .NET Environment.