Skip to main content

Key Concepts

The MySQL service consists of the following key concepts:

Key ConceptDescription
Instance GroupAn object that manages the lifecycle of instances and backups.
InstanceA VM managed by the instance group. Its role is determined based on availability—either Primary or Standby.
Instance TypeA virtualized hardware resource that includes virtual CPUs (vCPUs) and system memory.
- Multiple types are supported to allow optimal MySQL instance selection based on workload.
Instance Group/Instance LifecycleAllows users to check and manage the operational and task status of instance groups/instances according to their lifecycle stages.
BackupPerformed online without database downtime; includes managing creation and deletion of backups.
VolumeProvides the database using block storage volumes for MySQL service.
- Users do not need to manually create or configure block storage.
Network & SecurityProvides VPC-based network and security features, allowing you to build logically separated environments depending on network requirements.
- All MySQL instances are provided in a VPC environment.
IAM & SecurityAssigns appropriate access permissions based on user roles via IAM, enabling secure management of MySQL resources.
Parameter GroupManages MySQL configuration parameters by version and group.

Instance Group

An instance group manages the lifecycle of instances and backups.
MySQL instance groups have various states, including operational and termination statuses. Users can use these to monitor and manage their groups.

Instance group lifecycle and statuses

When you create a MySQL instance group, it starts in the Pending state and transitions through Provisioning and Primary Available before reaching the Available state. In this state, users can access the MySQL instance group through the selected network’s endpoint and port. The default ports are 3306 for Primary and 3307 for Standby, but users can choose any port between 1024 and 65535 during creation.

Lifecycle of MySQL instance group

Image MySQL Instance Group Lifecycle

StateDescription
PendingPreparing to configure the MySQL instance group.
- When you create a new instance group, it begins in the Pending state.
ProvisioningCreating instances within the MySQL instance group.
Primary AvailableStandby instance resources are being allocated and configured. The group is usable.
* Availability status of Standby instances is also shown.
* HA is maintained and the Primary instance remains available.
SwitchingA failover (manual or automatic) is currently in progress.
AvailableAll instances in the group are in Running state and ready for use.
- Users can access the instance group through its endpoint and selected port.
- Default ports: 3306 (Primary), 3307 (Standby). Custom ports allowed: 1024–65535.
Scaling-OutAdding Standby instances to the instance group.
Scaling-InRemoving Standby instances from the instance group.
MaintenanceMaintenance operations in progress.
- Examples: engine version upgrade, OS kernel or version upgrade, restart operations (shelve/unshelve, reboot, apply IOPS).
RebootingInstance group is currently rebooting.
ModifyingInstance group is being updated (e.g., changing security group).
ErrorOne or more instances in the group have encountered errors and are temporarily unavailable.
TerminatingAll instances are being terminated, and all backups in the instance group are being deleted.
TerminatedAll instances and backups have been deleted, and the instance group is no longer available.

Availability status of instance group

When an instance group is in the Primary Available state (Standby resources are being allocated and configured), its operational state (availability) and the availability status of Standby instances are shown together.

Instance Group StateAvailability StatusDescription
PRIMARY-AVAILABLEREADYAll Standby HA components are ready.
PARTIAL-READYHA configuration is in progress; at least one Standby is ready.
PARTIAL-UNAVAILABLEAt least one Standby is ready, and at least one is unavailable.
ConfiguredAll Standby configurations are completed.
STANDALONENo Standby is ready, and at least one is unavailable.
UNAVAILABLEAll Standby instances are unavailable.
AVAILABLEREADYAll Standby instances are ready.
-No Standby instance exists.

Instance

An instance is a virtual machine (VM) managed by an instance group.
A MySQL instance is a virtualized database including CPU and memory resources, and is a component of a MySQL instance group. Each instance has a state, and its role is determined based on availability: either Primary or Standby.

Instance Roles
RoleDescription
Primary     The main instance used for both read and write operations.
- Users can access the MySQL instance via DNS.
StandbyA high-availability (HA) instance prepared for failover in case the Primary fails.
- Created when the instance availability is set to High Availability, or added manually from the instance list.
- Also acts as a read-only replica (Read Replica).

Instance types

MySQL service supports optimized instance types based on the intended use and expected workload.
Each MySQL instance type defines the hardware specifications and configurations for a managed database. When creating a MySQL instance group, you can select the desired instance type, and billing is based on usage. High-performance compute and memory-optimized instance types will be added in the future.

MySQL Instance TypevCPUMemory (GiB)
m2a.large       28
m2a.xlarge416
m2a.2xlarge832
m2a.4xlarge1664
m2a.8xlarge32128
m2a.12xlarge48192
m2a.16xlarge64256
m2a.24xlarge96384
r2a.large216
r2a.xlarge432
r2a.2xlarge864
r2a.4xlarge16128
r2a.8xlarge32256
r2a.12xlarge48384
r2a.16xlarge64512
r2a.24xlarge96768

Instance lifecycle and status

An instance starts in the Pending state, transitions through Provisioning and Starting, and finally reaches the Running state.

Image MySQL Instance Lifecycle

StatusDescription
PendingPreparing the instance configuration.
StartingSetting up and initializing the MySQL database.
RestartingRestarting the MySQL process.
RunningThe instance is running and available for use.
Volume-ExtendingThe instance volume is currently being extended.
Engine-UpgradeThe MySQL engine is being upgraded.
Kernel-UpgradeThe OS kernel is being upgraded.
OS-UpgradeThe operating system is being upgraded.
RebootThe instance is being rebooted.
ErrorAn error has occurred, making the instance temporarily unavailable. Triggered by database or API request failures.
TerminatingThe instance is being terminated and returned.
TerminatedThe instance is fully terminated and no longer available.

Instance availability configuration and roles

The number and roles of instances vary depending on the chosen availability configuration.

Availability ModeNumber of InstancesDescription
Single (Primary only)1         Only one Primary instance is created.
High Availability (HA: Primary + Standby)Up to 6One Primary instance and 1–5 Standby instances are created.

Instance availability states

These states represent the data replication status between MySQL instances. Applicable only to instance groups configured with High Availability.

Image MySQL Instance Availability States

Availability StateDescription
CONFIGUREDData replication between MySQL instances is functioning properly.
CONFIGURINGReplication setup is in progress.
DELAYINGReplication delay exceeds 60 seconds.
WARNING-SYNCThe Standby instance holds more data than the Primary.
UNAVAILABLEData replication has stopped.

Backup

Backups are managed on a MySQL instance group basis.

Backup lifecycle and statuse

Backups begin in the Pending state, transition through Processing, and are considered complete when they reach the Succeeded state.
Backups created before and after March 19, 2024, follow different lifecycles for operations like restore and delete.

Backup Status (Created before March 19, 2024)

Image
MySQL Backup Lifecycle (Before March 19, 2024)

StatusDescription
PendingInitial state of the backup.
ProcessingBackup is in progress.
In-Use-CheckingVerifying whether the backup is currently used for restoration before deletion.
Deletion-PendingBackup is queued for deletion but currently used for restoration (deletes after restore finishes).
DeletedBackup has been completely removed.
SucceededBackup completed successfully.
DeletingBackup is in the process of being deleted.
FatalInternal logic failure occurred.
ErrorAbnormal termination of backup process.
– Triggered by DB or external API failures during backend logic.
Backup Status (Created after March 19, 2024)

Image
MySQL Backup Lifecycle (After March 19, 2024)

StatusDescription
PendingInitial state of the backup.
ProcessingBackup is in progress.
– Even if deletion is requested, it will only occur after the backup succeeds or fails.
RestoringCurrently used for restoration and cannot be deleted.
DeletedBackup has been completely removed.
SucceededBackup completed successfully.
DeletingDeletion in progress.
– If the backup is used for restore, the state transitions to Restoring.
ErrorBackup failed.
– Cannot be restored but can be deleted.

Failover

MySQL supports High Availability (HA). When selecting HA for an instance group, multiple Standby instances can be created, and Failover ensures service continuity in case of failure.
Both automatic failover and manual failover are supported.

Warning

Service interruption may occur during failover.

Failover lifecycle

Instance Group States During Failover

StatusDescription
SWITCHINGFailover is in progress. MySQL service is unavailable.
PRIMARY-AVAILABLEStandby instance setup is in progress.

Volume

MySQL uses block storage devices to provide database storage.
Users are not required to manually create or configure block storage.


Network and security

All MySQL instances operate within a VPC environment.
VPC offers networking and security capabilities, enabling logically isolated environments based on specific network requirements.
See the VPC documentation for more details.


Parameter group

MySQL configuration parameters can be grouped and managed together.

Parameter synchronization status

Image
Parameter Group Sync Status

StatusDescription
PendingWaiting to apply parameter changes.
ApplyingApplying parameters to the instance group.
In-SyncParameters have been successfully applied to all instances in the group.
Partial-SyncParameters were only partially applied due to instances not being in a state (e.g., Failover, Provisioning) that allows syncing.
– Once successful, the status changes to In-Sync, otherwise it becomes Error-Sync.
Error-SyncParameter sync failed. You can retry the sync, which changes the state to Applying.
SuspendedSync is paused because a previous instance group failed to apply parameters.
– Retry is possible and will change the state to Applying.