Key concepts
This page explains how instance groups, instances, backups, failover, volumes, and parameter groups are structured and operated in the MySQL service. For how to create and manage each resource, see the relevant How-to Guides.
| Key concept | Description |
|---|---|
| Instance groups | Unit that manages instance and backup lifecycles |
| Instance | VM (Virtual Machine) unit included in an instance group. It has a Primary or Standby role depending on the availability configuration |
| Instance types | Virtualized resource specifications composed of vCPU and memory |
| Backup | Data copy created by instance group and used for restore |
| Failover | High availability feature that switches to a Standby instance when the Primary instance fails or when a manual request is made |
| Volumes | Block Storage-based storage space that provides the MySQL database |
| Network and security | Network and security configuration for accessing MySQL instances in a VPC environment |
| Parameter groups | Object that manages MySQL configuration parameters by version and group |
Instance groups
Instance group is object that manages lifecycle of instances and backups.
MySQL instance groups have various states including operational and terminated states, and users can manage instance groups by checking these states.
Instance group lifecycle and states
When creating MySQL instance group, it starts in Pending state and transitions to Available state through Provisioning and Primary Available states. MySQL instance groups in Available state can be accessed through endpoint and port of selected network. Default ports for MySQL instance groups are 3306(Primary) and 3307(Standby), and users can specify desired ports within range of 1024–65535 during creation.
MySQL instance group lifecycle
MySQL instance group lifecycle
| State | Description |
|---|---|
Pending | Preparing to configure MySQL instance group - When MySQL instance group is first created, it starts in Pending state |
Provisioning | Creating instances of MySQL instance group |
Primary Available | Allocating and configuring virtual hardware resources used by Standby instances of MySQL instance group, while remaining available for normal use * Availability status of Standby instances is displayed together with operational state (availability state) of instance group * HA configuration itself is maintained and Primary instance remains available |
Switching | Processing manual failover request or auto failover |
Available | All instances in MySQL instance group are in Running state and available for normal use- MySQL instance groups in Available state can be accessed through endpoint IP and port of selected network - Users can specify ports within range of 1024–65535, and default ports are 3306(Primary) and 3307(Standby) |
Scaling-Out | Adding Standby instances to MySQL instance group |
Scaling-In | Removing Standby instances from MySQL instance group |
Scaling-Up | Flavor of MySQL instance group has been changed (CPU or memory increased) |
Scaling-Down | Flavor of MySQL instance group has been changed (CPU or memory decreased) |
Storage-Full(Warning) | Remaining free space in data or log volume is 30 GB or less |
Storage-Full(Error) | Remaining free space in data or log volume is 5 GB or less |
Maintenance | MySQL maintenance operation is in progress - Operation types: Engine version upgrade, OS kernel upgrade, OS version upgrade, instance restart (shelve/unshelve, reboot, applying IOPS, etc.) |
Rebooting | Instance group state while instance restart is in progress |
Modifying | Modifying instance group information (such as changing security groups) |
Error | Some instances in MySQL instance group have encountered errors and are temporarily unavailable |
Terminating | Fully terminating and returning all instances in MySQL instance group, while deleting backups created from instance group |
Terminated | Backups created from MySQL instance group have been deleted, and all instances have been terminated and are unavailable |
Availability states of instance group
When instance group is in Primary Available state (allocating and configuring Standby resources), operational state (availability state) of instance group and availability state of Standby instances are displayed together.
| Instance group state | Availability state | Description |
|---|---|---|
PRIMARY-AVAILABLE | READY | All Standby HA configurations are ready |
PARTIAL-READY | HA configuration is in progress and at least one Standby has been configured | |
PARTIAL-UNAVAILABLE | At least one Standby has been configured and at least one Standby is unavailable | |
CONFIGURED | All Standby configurations are ready | |
STANDALONE | No configured Standby exists and at least one Standby is unavailable | |
UNAVAILABLE | All Standby instances are unavailable | |
AVAILABLE | READY | All Standby configurations are ready |
| - | No Standby exists |
Instance
Instance is VM (Virtual Machine) managed by instance group.
MySQL instance is virtualized database including CPU and memory, and is object included in MySQL instance group. Each MySQL instance has states and is assigned either Primary or Standby role depending on availability.
For how to view and manage instances, see Manage instances.
Instance roles
| Instance role | Description |
|---|---|
| Primary | Instance used for general read and write operations - Users can access instance through provided endpoint (DNS) |
| Standby | Instance for high availability in preparation for Primary failures - Created when instance availability is selected as high availability, or can be added from instance list - Also serves as read-only replica (Read Replica) |
Instance types
MySQL service supports optimized instance types according to usage purpose and expected workloads.
Managed database specifications and settings are determined by instance type of MySQL instance group. Instance type can be selected when creating MySQL instance group, and charges apply according to resources used. MySQL instance types optimized for high-performance computing and memory will be added in future.
For how to change the instance type, see Change instance type.
| MySQL instance type | Default vCPU (count) | Memory (GiB) |
|---|---|---|
| m2a.large | 2 | 8 |
| m2a.xlarge | 4 | 16 |
| m2a.2xlarge | 8 | 32 |
| m2a.4xlarge | 16 | 64 |
| m2a.8xlarge | 32 | 128 |
| m2a.12xlarge | 48 | 192 |
| m2a.16xlarge | 64 | 256 |
| m2a.24xlarge | 96 | 384 |
| r2a.large | 2 | 16 |
| r2a.xlarge | 4 | 32 |
| r2a.2xlarge | 8 | 64 |
| r2a.4xlarge | 16 | 128 |
| r2a.8xlarge | 32 | 256 |
| r2a.12xlarge | 48 | 384 |
| r2a.16xlarge | 64 | 512 |
| r2a.24xlarge | 96 | 768 |
Instance lifecycle
Instances start in Pending state and transition to Running state through Provisioning and Starting states.
MySQL instance lifecycle
Instance states and billing
| State | Description | Billing |
|---|---|---|
Pending | Preparing to configure instance | Not billed |
Starting | Configuring database and applying settings to instance | Not billed |
Running | Instance is running and available for use | Billed |
Volume-Extending | Volume of instance is being extended | Billed |
Engine-Upgrade | MySQL engine upgrade is in progress | Billed |
Kernel-Upgrade | Kernel upgrade is in progress | Billed |
OS-Upgrade | OS upgrade is in progress | Billed |
Reboot | Instance is restarting | Billed |
Resizing | Instance type change (scaling up/down) is in progress | Billed |
Storage-Full(Warning) | Remaining free space in instance data or log storage is 30 GB or less | Billed |
Storage-Full(Error) | Remaining free space in instance data or log storage is 5 GB or less | Only storage charges apply |
Error | Instance is temporarily unavailable due to error State updated when DB or API request fails | Not billed |
Terminating | Instance is being fully terminated and returned | Not billed |
Terminated | Instance has been terminated and is unavailable | Not billed |
Instance availability configuration and roles
Number of instances and role of each instance are determined according to instance availability configuration.
| Instance availability configuration | Number of created instances | Description |
|---|---|---|
| Single | 1 | Creates only one Primary instance |
| High availability | Up to 6 | Creates Primary and Standby instances - Creates 1 Primary and 1–5 Standby instances |
Instance availability states
Refers to state of data replication between MySQL instances. Applies only to instance groups configured with high availability.
MySQL instance availability states
| Availability state | Description |
|---|---|
Configured | Data replication of MySQL instance is functioning normally |
Configuring | Configuring data replication of MySQL instance |
Delaying | Data replication of MySQL instance is delayed by more than 60 seconds |
WarningSync | Standby has more data than Primary |
Unavailable | Data replication of MySQL instance has stopped |
Backup
Backups are managed at MySQL instance group level.
For how to view and manage backups, see Manage backups. For how to restore to a specific point in time, see Point-in-time recovery.
Manage backup lifecycle and states
Backups start in Pending state and are completed when they reach Succeeded state through Processing state.
Backup states
MySQL backup lifecycle
| State | Description |
|---|---|
Pending | Initial backup state |
Processing | Backup is currently in progress - Even if deleted in this state, deletion is executed only after backup completes successfully ( Succeeded) or fails (Error) |
Restoring | Backup is being used for restore and cannot be deleted |
Deleted | Backup has been completely deleted |
Succeeded | Backup completed successfully |
Deleting | Deleting backup - If backup is being used for restore, deletion stops and state changes to Restoring |
Error | Backup failed - Restore unavailable, deletion available |
Reference: Check backup states created before March 19, 2024
Backups created before March 19, 2024 have some different states and delete/restore behavior from backups created after that date.
Backup states created before March 19, 2024
MySQL backup lifecycle, created before March 19, 2024
| State | Description |
|---|---|
Pending | Initial backup state |
Processing | Backup is currently in progress |
In-Use-Checking | Checking whether recovery using successful backup is in progress when deleting backup |
Deletion-Pending | Backup used for recovery is pending deletion (deletion proceeds after recovery completes) |
Deleted | Backup has been completely deleted |
Succeeded | Backup completed successfully |
Deleting | Deleting backup |
Fatal | Internal logic failure state |
Error | Backup terminated abnormally - State updated when DB or external API request fails in backend logic |
Failover
MySQL supports high availability (HA) feature. When backup instance availability type is selected as high availability, multiple Standby instances can be created, and failover can be performed to minimize service interruption during failures. Both auto failover and manual failover are supported.
For how to perform manual failover, see Manual instance failover.
Temporary service interruption may occur during failover.
Failover lifecycle
Instance group states during failover are as follows.
| State | Description |
|---|---|
SWITCHING | Failover is in progress - MySQL service is unavailable |
PRIMARY-AVAILABLE | Configuring Standby instances |
Volumes
Databases are provided using volumes, which are Block Storage devices. Therefore, users do not need to directly manage Block Storage such as creating or configuring Block Storage.
For how to expand volumes, see Expand MySQL instance group volumes.
Network and security
All MySQL instances are provided in a VPC environment. You can build a logically isolated service environment using VPC networking and security features. For more information, see VPC.
For how to modify security groups, see Modify security groups.
Parameter group
You can create and manage MySQL parameter values in groups.
For how to create and modify parameter groups, see Manage parameter groups. For how to change the parameter group applied to an instance group, see Change parameter group.
Parameter application status
Parameter group application states
| State | Description |
|---|---|
Pending | Waiting for parameter application |
Applying | Applying parameters to instance group |
In-Sync | Parameters have been successfully applied to instance group |
Partial-Sync | Parameters have been applied only to some instances in instance group - Occurs when parameter application fails because instances in instance group are not in Failover, Provisioning, or Available state - If application completes successfully, state changes to In-Sync; if it fails, state changes to Error-Sync |
Error-Sync | Failed to apply parameters to instance group - You can retry parameter application, and when retried, state changes to Applying |
Suspended | Waiting for next operation because parameter application failed in preceding instance group during sequential application - When state changes from Pending to Suspended, you can retry parameter application- When retried, state changes to Applying |