Mysql – the best way to upgrade a MySQL version in a Linux Server

MySQL

I have database around 14 GB running with 8 -15 GB ram(diffrent deployments) .At present MySQL version is 5.5 and I’m planning to move to 5.6 . I did similar activity in past for 5.1 to 5.5 upgrade .

Steps I followed is 1. Resolve any syntactical issue that can be faced in upgrader version of Mysql in code base prior to upgrade.

at the day of upgrade 2. Shut down the MySQL with application; take two backups (one with data and without data) 3. Uninstall and remove old MySQL instance and install new MySQL instance. 4. Import backup without data first and with data second and go live again.

I experience that during above process, it took very long time for importing backup file to database as some of our production servers run with less memory and during this remotely increase the risk as well. This is the only best way I know, is there a best approach I can fallow to upgrade MySQL version in future with very less time . Appreciate your help . Please note that I do not have facility to get another machine to do this, so I have to do in same production server where justifiable downtime is acceptable.

Best Answer

I found the question relevant, however it is answered before elsewhere

  1. You want to turn off you database (take the backup, but only for the reason of having a backup)
  2. Go to you config file (.ini), in there locate the datadir
  3. take a copy of this directory, or make sure it is not removed when reinstalling
  4. Reinstall, and check if everything works, make sure the datadir is the same

This is how i would do it, but i haven't tested this, so you might bump into issues

(this idea/theory is backup up by this guy) http://dacosta9.wordpress.com/2008/10/25/moving-data-files-to-another-disklocation-mysql-sql-server/

And from Server fault https://serverfault.com/questions/68146