Direct Upgrade from MySql 5.1 to Maria DB 10.1


We are migrating our product from MySQL 5.1 to MariaDB 10.1. Given the tricky nature of our product's upgrade we cant give an additional hop of MariaDB 5.5 and then upgrade to MariaDB10.1.

So before upgrade we are taking backup of complete database using mysqldump. Remove all the MySQL RPMs. Install MariaDB 10.1 RPMs, set password and privileges and restore the MySQL dump back on MariaDB.

We are able to restore all the tables properly and did not face any issue in particular. However we dont want to take any chance with the data integrity post upgrade so planning to write steps which can ascertain data is proper and no customer data is lost.

We would like to know 1. Is this process of Migration is proper, if not what challenges we may face while restoring mysql dump on MariaDB?

2. Before restoring the dump we are changing the Engine type to InnoDB. Since InnoDB do not support repair table what alternative we can use?

3. Is it ok to run Check table on InnoDB tables or there is any better utility? If Check table is ok and it returns some error how can we resolve it?

Answer Answered by Ian Gilfillan in this comment.

1. The main concern with skipping versions is that, while upgrading one major version is usually well-tested, skipping versions is not, so you may bump into an incompatibility. I suggest carefully going through the changes in each release to see if any could affect you: 5.3, 5.5, 10.0, 10.1 as well as MariaDB versus MySQL - Compatibility. Many people have successfully done what you intend, but it depends entirely on your usage.

2/3. InnoDB is very different to MyISAM. It's much more robust, and there's usually no need to check and repair in the same way. See Converting Tables from MyISAM to InnoDB as well as XtraDB/InnoDB Recovery Modes for what happens when innoDB detects corruption. Usually you would need to restore from backup (drop and reload).


Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.