This page will show you how to upgrade your deployment to the MySql V9 template. To see what changed, see the MySql V9 Changelog.
If you don't already have binary backups stored on S3 from our MySql Manager, you don't need to follow this guide, simply follow the instructions in the MySQL Setup tutorial.
NOTE: If you have made ANY customizations to your MySql Master/Slave setup, please ensure that you propagate any necessary changes to the new templates before you begin updating.
If you currently don't have any servers running in your deployment and you want to upgrade to the V9 template, all you need to do is insert a new file in the backup bucket. To do this, navigate to the bucket that contains your DB backups and pick one of the backups to restore (most likely the newest). Copy the entire name up to the .partxxx and create a file on your local machine and append ".info" to the name. For example, if the backup that you want to restore has the following files:
prefix-date.part000
prefix-date.part001
prefix-date.part002
prefix-date.part003then create a plain text file named:
prefix-date.info
Save the file (doesn't matter what it contains) and upload it to the S3 bucket. Now launch the V9 bootstrap and ensure that it launches correctly.
To upgrade a live running slave, add an "MySql Additional V9" component to your deployment and launch it. If you did not override it, the default value of INIT_SLAVE_AT_BOOT will be true and the new slave will sync with the master and begin taking backups automatically. If you did set it to "false" or "no" then you will have to run the operational script, "DB Slave init" Once you verify that the slave is taking backups, terminate the old slave instance.
If you want to upgrade a live master, first follow the previous section to upgrade the slave and verify that it is taking backups properly. Once you have done this, you will want to run the "Promote to Master" script on the new slave. This will cause the DNS records for the master and slave to switch and will allow writes to the slave and prevent writes to the master. Depending on how your application accesses the database, you may need to restart it, so it is best to perform the master switch when your service will be least impacted.
Give your system about 5 mins to ensure that any transient effects are completed and then launch another "MySql Additional V9" template to be the new slave. Once it is initialized, confirm that it is taking backups properly and terminate the old master.