Upgrade MASTER-SLAVE MySQL 5.5 to fresh new MASTER-SLAVE Percona 5.6

Hi all,

I have a running Master-Slave MySQL 5.5 servers today - running on VERY high tense.
Running on Debian 6.0 64bit.
In parallel of checking on ways to optimize my code, I want to fresh up the hardware as well.

I have now a 2 new fresh servers (Dual x8 cores + 64GB ram + SSD RAID 1 and Dual x6 cores + 32GB ram + SSD RAID 1) . with Debian 8.0 64bit + Percona 5.6 .

Can you recommend on the BEST smooth way to upgrade from old setup to new setup with minimal impact on the production ?

mysqldump and restore is too slow for me

Thought maybe add both as slaves to the old setup , and somehow , in a blink of an eye, they become a master - slave , and drop the others.

Appreciate your help !

Hi neternality;

Basically you would do what you already thought of; setup the new 5.6 copy on the new hardware as a slave of your current master. Then when you are ready to transfer to the new 5.6 master, you will need to stop the incoming data somehow (turn off your app, flush tables with read lock, whatever you want) and then re-point your application at the new 5.6 master and then retire the old 5.5 master.

Instead of mysqldump, you could use Xtrabackup to setup the new master:

All that aside, I would make sure to do some thorough testing on your new master. Going to 5.6 and new hardware in one jump can be risky as that is a lot of moving parts and can make it hard to narrow down issues that come up (and there will be issues; there always is). =)


Thanks Scott. What I noticed is that xtrabackup generate a FULL datadir as a copy of the old MASTER.
Note, Current environment is MASTER-SLAVE with MySQL 5.5 on Debian 6 .

The new environment that I’ve built is Percona MySQL 5.6 on Debian 8 .

My concern is if I take all the datadir that the Xtrabackup created, it causes to run Percona MySQL 5.6 with the old configurations.
Correct me if I’m wrong , but Only real mysqldump (with all its cons) is the right solution here ?

Appreciate your help.

Hi neternality;

mysqldump is the recommended way to do any major upgrade, so that is true. You can do an in-place upgrade from 5.5 to 5.6, but it can have mixed results depending on your specific setup/data (that’s where thorough testing comes in). If mysqldump is too slow for you, you could look into some sort of parallel dump solution like mydumper to speed it up. We use a custom solution to parallel dump large databases (terabytes) and it works fine, mostly depending on your disk speed.