As there is no official guide on how to upgrade Uniform Server from one version to another I decided to compile one myself, keep in mind that I might miss something and update this guide from time to time when I run into an issue:
- Export Your databases using phpMyAdmin
- Export Your databases users using phpMyAdmin because databases export does not do that
- Stop Apache and MySQL, if You are running them as Windows services - uninstall them
- Rename Your UniServerZ folder to UniServerZ-backup or something
- Put Your new UniServerZ folder where Your old one used to be
- Check .httaccess files for stuff that might conflict
- If everything is OK copy www folder from UniServerZ-backup to UniServerZ
- If You use VHosts copy vhosts folder from UniServerZ-backup to UniServerZ compare \core\apache2\conf\extra\httpd-vhosts.conf files and copy extra lines at the end from UniServerZ-backup to UniServerZ - this one did not work for me, I had to recreate vhosts in UniController and after that do the copying, might have something to do with hosts file
- If You use SSL copy ssl folder from UniServerZ-backup to UniServerZ, compare \core\apache2\conf\extra\httpd-ssl.conf files and copy extra lines at the end from UniServerZ-backup to UniServerZ
- Compare \core\mysql\my.ini files and copy settings from UniServerZ-backup to UniServerZ if needed
- Compare \core\php70\php_production.ini files and copy settings from UniServerZ-backup to UniServerZ if needed
- Start the new UniController.exe (as administrator if You need to edit start-up settings)
- Enter the root MySQL password, preferably same as the old one for simplicity
- Edit start-up settings if needed
- Reinstall Windows services if needed, start the Apache and MySQL
- Import (or recreate) Your databases users using phpMyAdmin
- Import Your databases using phpMyAdmin
Bonus:
- If You need to access Your databases from outside:
- Comment the "bind-address=127.0.0.1" line in UniServerZ\core\mysql\my.ini file (it might be already done in 10th step)
- Change the hostname for database users using phpMyAdmin