Enough of the theory and text lets use the Azure Portal and create MySQL Single server. Navigate to the Azure Portal, find Azure Database for MySQL servers:
Click create when then I select single server
Then we work through the below screen.
Version – this is the MySQL version you would like to use. 5.7 being the default, at the time of writing 8.0 is also available but I would not use this for single server as indicated below:
- Compute / storage – this depends on your needs.
At the high level you need to select from basic, general purpose or memory optimised. Notice that important warning about the basic tier Please note that changing to and from the Basic compute tier or changing the backup redundancy options after server creation is not supported.
If you are used to Azure SQL server you may have scaled the storage lower, you can’t here.
Most likely you will select from general purpose or memory optimised. Memory optimised has 10GB per vcore rather than 5GB for general purpose, this is a big difference, but expect higher prices. The table summary is shown below.
I stick with General purpose – 2vcore and 55GB storage. This will then tell me a throttled IOPs number, mine is 165 available.
I leave auto-growth on, Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. This is like the Auto growth setting in SQL server classic, we all know that’s a no in the SQL server world, but here, I’m leaving it on!
Side note, if you are not happy with the IOPs how can you scale this? Well, the total amount of storage you provision also defines the I/O capacity available so if I go to 1TB, the new figure is shown below.
Once you are happy with the compute and storage enter admin details. ( Don’t forget, these compute options are not per database – its for the server)
Depending on your region you may be able to enable “double” encryption.
By default, encryption at rest occurs using Microsoft’s managed keys – double encryption is another layer on top of that where it uses service-managed keys. It uses FIPS 140-2 validated cryptographic module, but with a different encryption algorithm, sounds good BUT there is a performance impact so do your research!
Pass validation and click create.
Next we will connect to it. Stay tuned!