This is a very wrong approach. You should not force the users to install third-party products (which they may not trust, or prefer) just to make use of your application. In most cases, you will lose your audience and users.
In cases, where a database is required to be used. You should consider storing the database on your own server and then allow the users to consume the services and get the responses. In most of the cases, this is the approach. CodeProject has a database, they don't force you to download a copy of their database on your system and then use the service. If they did, no one would have used their services.
Same is your case, if your application is database oriented. Consider using something as much light-weight as, SQLite. If that is not possible, consider another approach for data source, you may want to use JSON files for that! Usually, users use only 1-10 MB of database size. Which is enough to store most of the text data on system.
If still that is not a good option to you, then save the MySQL instance on your server and use a web service to provide the services to the users. That would be a much better approach and users would only have to download a client of your application. This may also add an extra layer of security to your application and project.
Anyways, if you are still interested in packaging the installer, please go through the following installer guides:
Windows Installer (Windows)[
^]
Visual Studio 2013 Installer Projects – Hello World Installer[
^]
Creating installers with Visual Studio - Brian Harry's blog - Site Home - MSDN Blogs[
^]