Mariadb – What are the risks of upgrading DB major version in replica and then promoting it as master

amazon-rdsawsmariadbupgrade

Recently AWS decided to force update all MariaDB RDS under 10.3, my RDS is in MariaDB 10.1. We are trying to minimize the downtime and any risk of data out of sync.

Our plan is to create a replica and upgrade it from 10.1 to 10.5. After that we will let it to consume binary log from old non-upgraded RDS then promoting it as Master and point our website to the newly created and upgraded RDS.

Assuming we will have continuous stream of data coming into the RDS, what are the risk of steps above? Is the new RDS able to get all binary log genereated during the upgrade time? We estimated there will be ~ 1.5 hours to finish upgrading from 10.1 to 10.5

Thank you for helping

Best Answer

There are risks. I doubt if anyone can enumerate all the risks.

Plan A: Dump all the data via mysqldump (or other dump utility); upgrade the system; load the data. This usually lets you safely do multi-major-version upgrades.

Plan B: Upgrade one major version at a time. (This has always been a requirement in MySQL, especially when going to 8.0. MariaDB does a better job at relaxing the limitation to a single major.)

Plan C: Get RDS to do the work. I would expect that they have well-tested upgrade paths for when they force an upgrade. (The Question is unclear as to whether your 10.1 is currently hosted by AWS or yourself.)

I would go with 'C' since they have all the tools to do everything with minimal downtime, etc. They will probably use snapshots, etc, which you don't have easy access to.