Create and manage parameter groups
A parameter group lets you view MySQL parameters by engine version and manage settings applied to connected instance groups.
The parameter list and basic concepts provided by KakaoCloud MySQL follow the MySQL official documentation. Changing parameters may affect MySQL service operation, so review the purpose and values of each parameter before making changes.
- You can receive notifications for events such as creation and modification of parameter groups through Alert Center > Event Notification.
- For available event types, see Cloud Trail > Concepts, and for setting alerts, refer to Alert Center > Creating and Managing Alert Policies.
View parameter group list
You can check the list of parameter groups, including default and custom groups, provided by KakaoCloud MySQL.
-
Go to the KakaoCloud Console > Data Store > MySQL.
-
Click the Parameter Groups menu and choose either the Custom Groups or Default Groups tab.
-
The corresponding parameter group list will be displayed.
Item Description Name Name of the parameter group Engine Version MySQL engine version compatible with the parameter group Connected Instance Groups Number of instance groups connected to this parameter group
- A warning icon is shown if there's an issue with parameter application statusDescription Description of the parameter group [⋮] button Available only for custom groups:
- Edit: Modify parameters
- Copy: Create a new group with the same parameters
- Reset to Default: Restore parameters to their initial values
- Rollback: Revert to previous values if available
- Delete: Delete the group
View parameter group details
You can view detailed information about a MySQL parameter group.
- Go to the KakaoCloud Console > Data Store > MySQL.
- Click the Parameter Groups menu and choose either the Custom Groups or Default Groups tab.
- Select the desired parameter group to view its details.
Tab: Parameters
Depending on the parameter type, such as Static, modifying a parameter may require an instance restart.
| Item | Description |
|---|---|
| Name | Parameter name |
| Value | Parameter value |
| Type | Parameter type: Static, Dynamic- Static requires a restart when applied- Some Dynamic parameters require session refresh as they apply globally |
| Data Type | Data type of the parameter |
| Editable | Not Editable, Editable, Editable (Modified)- Only Editable parameters can be changed. If modified, they are marked as Editable (Modified) |
Tab: Connected instance groups
| Item | Description |
|---|---|
| Name | Name of the instance group |
| Status | Status of the instance group |
| Parameter Application Status | Current status of parameter application - See Parameter Application Status for details |
| Engine Version | MySQL engine version of the instance group |
| Instance Type | Type of instance used in the group |
| Availability | Instance availability: Single, High Availability |
| [Retry] Button | Retry applying the parameter if the status is Error-Sync or Suspended |
Tab: Recent Events
You can check major events that occurred for the parameter group in the past 7 days.
| Item | Description |
|---|---|
| Time | Time the event occurred |
| Name | Event name |
| Details | Event details including results and affected instance group |
- Recent event types by parameter group:
| Group Type | Event Name | Description |
|---|---|---|
| Custom Group | Create Parameter Group | Triggered when a new custom group is created |
| Update Parameter Group | Triggered when the description of a custom group is updated | |
| Update Parameter | Triggered when parameter values are updated | |
| Reset Parameters | Triggered when parameters are reset to default | |
| Rollback Parameters | Triggered when rollback is requested | |
| Apply Instance Group | Triggered when parameters are successfully applied | |
| Default Group | Apply Instance Group | Same as above |
Create parameter group
-
Go to the KakaoCloud Console > Data Store > MySQL.
-
Click Parameter Groups and select the Custom Groups tab according to the type of parameter group you want to view.
-
In the Custom Groups tab, click the icon > Create Parameter Group.
-
Enter the required information on the Create parameter group page. Parameter values can be modified after the group is created.
Item Category Description Basic Settings Parameter Group Name Name of the parameter group
- Duplicate names cannot be used within the same projectDescription (Optional) Additional description up to 100 characters Parameter Group Settings Engine Version MySQL engine version for the parameter group Default Parameter Group Select the default parameter group provided for the engine version Parameters Initial parameter values for the group
Modify parameter group
Custom parameter groups allow you to modify descriptions and parameter values after the group is created. Only parameters marked as Editable can be modified. Modified parameters change to Editable (Modified).
- Some
Dynamicparameters apply globally and require a session refresh. - For
Staticparameters, modifying them triggers a restart of the connected instance groups. - If the parameter application status is
PendingorApplying, parameters cannot be modified. - Checkboxes remain selected even when navigating through pages within the modifiable parameter list.
- Some parameters may affect MySQL service operation when modified. Refer to Parameters to be careful when modifying.
- If issues occur after modification, it is recommended to create a parameter group copy for backup, and use retry/rollback/reset options when needed.
-
Go to the KakaoCloud Console > Data Store > MySQL.
-
Click Parameter Groups and navigate to the Custom Groups tab.
-
Select the parameter group you want to modify and click the [⋮] button > Edit.
-
Modify the required values on the Edit Parameter Group page.
Item Category Description Basic Information Parameter Group Name Name of the parameter group Description (Optional) Additional description up to 100 characters Editable Parameters List of parameters that can be modified
- Modified parameters change toEditable (Modified) -
Enter values manually or use the Load Existing Parameters feature to import values from an existing custom parameter group, or use Reset to Default to restore initial default values. Click Confirm when finished.
-
If multiple instance groups are connected to the parameter group, select how the parameter updates should be applied.
Apply All: Apply the modified parameters to all instance groups at once.Apply Sequentially: Apply the parameters to each instance group sequentially.
Load existing parameters
You can load parameter values from an existing custom parameter group, regardless of version. Since loaded values replace the existing ones, we recommend saving any necessary information before loading.
- Go to the Edit parameter group page.
- In the popup, select the engine version and the target custom parameter group.
- Review the parameters to be loaded and click Apply.
Parameters to be careful when modifying
Some parameters can affect memory usage, connection count, character set, search features, and other behavior. Before changing them, check the instance specifications, workload, and dependencies between parameters.
InnoDB memory and log parameters
| Parameter | Purpose | Notes when modifying |
|---|---|---|
innodb_buffer_pool_size | Sets the InnoDB buffer pool size | If too small, performance may degrade. If too large, system memory may become insufficient Configure based on instance group specifications and workload - Reserved expression example: {kc.InstanceMemory * 6 / 10}- Depending on MySQL buffer pool management, it may be readjusted to a multiple of {innodb_buffer_chunk_size * innodb_buffer_pool_instances} |
innodb_buffer_pool_chunk_size | Sets the chunk size used when allocating the InnoDB buffer pool | If too small, memory allocation efficiency may decrease. If too large, initialization time may increase Check its relationship with innodb_buffer_pool_size- Changing this value may automatically increase innodb_buffer_pool_size |
innodb_buffer_pool_instances | Sets the number of instances that divide the InnoDB buffer pool | If too low, contention may degrade performance. If too high, memory may be wasted Configure based on instance group specifications - Reserved expression example: { MIN(kc.InstanceVcpu * 2, 64) } |
innodb_redo_log_capacity | Sets the total InnoDB redo log capacity | If too small, performance may degrade because log files fill up quickly. If too large, disk usage may increase Check transaction volume and log storage usage |
Connection and time setting parameters
| Parameter | Purpose | Notes when modifying |
|---|---|---|
max_connections | Sets the maximum number of concurrent connections allowed to the MySQL server | If too low, connections may fail. If too high, resource usage may increase Configure based on instance group specifications and application connection count - Reserved expression example: { MIN(kc.InstanceMemory / 12582880, 16000) } |
time_zone | Sets the MySQL server time zone | Incorrect time zone settings may cause timestamp and time-related data errors The time zone of each connecting client can be initialized - Available value examples: system, +00:00, +01:00 |
Character set and collation parameters
character_set_* and collation_* parameters must be set to compatible values. In particular, character_set_server and collation_server are related, so changing only one value may cause MySQL to automatically adjust it to a value that matches the same character set. Before changing them, see the MySQL official documentation for character sets, character set and collation compatibility, and server character set and collation.
| Parameter | Purpose | Notes when modifying |
|---|---|---|
character_set_clientcharacter_set_connectioncharacter_set_filesystemcharacter_set_resultscharacter_set_server | Specifies the character set used in databases, tables, and columns | Incorrect settings may cause data corruption, performance degradation, or compatibility issues Select a character set appropriate for the environment and check compatibility with collation_* parameters |
collation_connectioncollation_server | Sets string comparison and sorting rules within a specific character set | Incorrect settings may cause data integrity issues, performance degradation, or compatibility issues Set a collation compatible with character_set_* parameters |
character_set_servercollation_server | Sets the default character set and collation for the MySQL server | Changing only one value may cause MySQL to automatically adjust it to a value that matches the same character set Change both parameters together as a compatible combination - Example: If only character_set_server is changed to big5, the collation_server value shown in the console may differ from the value actually applied in the DB |
Feature dependency parameters
| Parameter | Purpose | Notes when modifying |
|---|---|---|
innodb_ft_aux_table | Specifies the auxiliary table for InnoDB full-text search | Incorrect settings may cause full-text search issues Condition for normal operation: enter an existing table name - If a non-existent table is entered, normal operation cannot be verified |
Expressions, Functions, and Reserved Keywords Used in Parameters
Some parameters in custom parameter groups support expressions, functions, and reserved keywords. These can only be used with numeric and string type parameters.
The result of any expression must be within the range of a 64-bit signed integer (-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807).
If the result exceeds this range, it will not be accepted.
| Category | Description |
|---|---|
| Expression | Must always be written within {} |
Can use (), +, -, *, / | |
| Result must always be a number | |
For INTEGER data types, decimals are truncated | |
| Function | MAX(a, b, ...): Returns the largest value. Must be uppercase. |
MIN(a, b, ...): Returns the smallest value. Must be uppercase. | |
SUM(a, b, ...): Returns the sum. Must be uppercase. | |
IF(condition, a, b): Returns a if true, b if false. Must be uppercase. | |
| Reserved Keywords | kc.InstanceMemory: Memory size (bytes) of the current DB instance type |
kc.InstanceVcpu: Number of vCPU cores in the DB instance | |
kc.VolumeSizeData: Data volume size | |
kc.VolumeSizeLog: Log volume size | |
kc.InstanceCount: Total number of nodes | |
kc.InstancePrimaryCount: Number of Primary nodes | |
kc.InstanceStandbyCount: Number of Standby nodes | |
kc.InstanceGroupId: Instance group ID |
Usage Example
Below is an example using the default value for max_connections.
Example
Returns the smaller of the two values: result of kc.InstanceMemory / 12582880 (rounded down), and 16000.
{ MIN(kc.InstanceMemory / 12582880, 16000) }
Copy Parameter Group
Custom parameter groups provide a copy feature that can be used for backup purposes. You can duplicate a selected parameter group to create a new one.
- Go to the KakaoCloud Console > Data Store > MySQL.
- Click the Parameter Group menu and select the Custom Group tab.
- Find the parameter group you want to copy, click the [⋮] button, and select Copy.
- In the Copy Parameter Group popup, review the details and click Confirm.
- Check the copied parameter group in the Custom Group tab.
Reset Parameter Group to Default Values
Custom parameter groups support a reset-to-default feature, which allows you to revert modified parameters back to their default values. The default value is the engine version’s base configuration at the time the group was created. Resetting will attempt to apply parameter changes to all connected instance groups.
- If the parameter application status of a connected instance group is
PendingorApplying, you cannot reset parameters to default. - Resetting a
Staticparameter will restart the connected instance group.
- Go to the KakaoCloud Console > Data Store > MySQL.
- Click the Parameter Group menu and select the Custom Group tab.
- Locate the group to reset, click the [⋮] button, and select Reset to Default Values.
- In the reset popup, review the information and click Confirm.
If the parameter group is connected to multiple instance groups, choose the application method:
Apply All: Apply changes to all instance groups at once.
Apply Sequentially: Apply changes one group at a time. - For connected instance groups, verify the parameter application status after reset.
Roll back parameter group
Custom parameter groups allow you to roll back parameter values to their previous state after a modification. You can only roll back if there is a modification history immediately before the rollback.
- You cannot roll back if the parameter application status is
PendingorApplying. - Rolling back a
Staticparameter will restart the connected instance group. - Once rollback is performed, previous values are restored and cannot be rolled back again. If new modifications are made, rollback becomes available again.
- Go to the KakaoCloud Console > Data Store > MySQL.
- Click the Parameter Group menu and select the Custom Group tab.
- Find the group to roll back, click the [⋮] button, and select Roll Back.
- In the rollback popup, review the information and click Confirm.
- For connected instance groups, verify whether the rollback was applied by checking the parameter application status.
Delete parameter group
If a custom parameter group is no longer needed, it can be deleted.
- Default parameter groups cannot be deleted.
- If the parameter group is connected to any instance group, it cannot be deleted.
- Go to the KakaoCloud Console > Data Store > MySQL.
- Click the Parameter Group menu and select the Custom Group tab.
- Locate the group to delete, click the [⋮] button, and select Delete.
- In the delete popup, provide the required information and click Confirm.
- Verify the deletion in the Custom Group tab.
Retry applying parameter group
You can retry applying a parameter group only when the parameter status of a connected instance is Error-Sync or Suspended (not In-Sync).
For more details on parameter application statuses, refer to Parameter Application Status.
- Go to the KakaoCloud Console > Data Store > MySQL.
- Click the Parameter Group menu and select the Custom Group tab.
- Select the parameter group and go to its Details page.
- Navigate to the Connected Instance Group tab.
- Click the Retry button next to the instance you want to retry applying the parameters to.
Check parameter group engine version
If the engine version of an instance group does not match the parameter group, a Check Engine Version badge is displayed. Custom parameter groups with this badge cannot be modified for service stability.
You can check instance groups with mismatched engine versions in the Parameter Group menu > Instance tab. If you use Change parameter group on the instance group and change it to a parameter group that matches the engine version, the badge disappears.
To keep using previously configured parameter values, create a new parameter group that matches the engine version, then use Load Existing Parameters in Modify parameter group.
- Where to check: Parameter Group menu > Instance tab
- Cause: The engine version of the connected instance group and parameter group do not match due to version upgrade or similar work
- Action: Change to a parameter group that matches the engine version