Create and manage parameter groups
A parameter group allows you to view and manage MySQL parameters based on the engine version at once.
You can also manage the parameters of instance groups connected to the parameter group collectively.
The parameter list and concepts provided by KakaoCloud MySQL follow MySQL’s official documentation. When changing parameters, be aware that it can affect your MySQL service, so we strongly recommend checking the correct parameters in advance through resources such as the official documentation.
Here is how to manage parameter groups in the MySQL service.
- 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
| 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 significantly impact MySQL service operation if modified. Refer to the following table for guidance.
Modifying collation and character set parameters may cause service issues if incorrect values are entered. Refer to the related official documentation (Charset Combination Guide, Collation Compatibility Guide) when configuring these.
| Parameter Name | Description | Potential Issues |
|---|---|---|
| innodb_ft_aux_table | Specifies the auxiliary table for InnoDB full-text search | Incorrect settings may cause issues in full-text search. - You must specify an existing table name for proper functionality. If a non-existent table is specified, it may not function correctly. |
| innodb_buffer_pool_size | Sets the size of the InnoDB buffer pool | If too small, performance degradation may occur; if too large, system memory shortages may arise. - A reserved expression is provided to set appropriate values based on instance group specs. Due to MySQL buffer management, the buffer pool memory is recalculated in multiples of {innodb_buffer_chunk_size * innodb_buffer_pool_instances}.*Example: {kc.InstanceMemory * 7 / 10} |
| innodb_log_file_size | Sets the size of each InnoDB log file | If too small, performance degrades; if too large, recovery time increases. |
| innodb_buffer_pool_chunk_size | Chunk size used when allocating the InnoDB buffer pool | Too small: inefficient memory allocation. Too large: increased initialization time. - Must be a multiple of innodb_buffer_pool_size,and changing this value will automatically increase innodb_buffer_pool_size.- Reserved expressions are provided for appropriate values based on instance specs. *Example: { (kc.InstanceMemory * 7 / 10) / (kc.InstanceVcpu * 2) } |
| innodb_buffer_pool_instances | Number of instances to divide the InnoDB buffer pool | Too low: contention and performance degradation. Too high: memory waste. *Fixed value: 134217728 |
| innodb_redo_log_capacity | Total capacity of the InnoDB redo log | Too small: logs fill quickly, degrading performance. Too large: increased disk usage. - Reserved expressions provided based on instance specs. *Example: { MIN(kc.InstanceMemory * 7 / 10 / 4, 2147483648) } |
| max_connections | Maximum number of concurrent connections allowed to MySQL | Too low: users can't connect to MySQL. Too high: excessive resource consumption. - Reserved expressions provided for appropriate values. *Example: { MIN(kc.InstanceMemory / 12582880, 16000) } |
| time_zone | Sets the MySQL server's time zone | Incorrect setting may cause timestamp and time-related data to be recorded inaccurately. Client time zones will be reset. *Example: system | +00:00 | +01:00 ... |
| collation_connection collation_server | - Defines collation rules for databases, tables, or columns. - Determines comparison/sorting method within a character set. | Incorrect settings can lead to data integrity issues, performance degradation, and compatibility problems. Can affect service when combined with character set parameters. See official docs. |
| character_set_client character_set_connection character_set_filesystem character_set_results character_set_server | - Specifies the character sets used for databases, tables, and columns. - Affects how string data is stored and processed; varies by character set and encoding. | Incorrect settings may cause data corruption, performance issues, and incompatibility. Proper character set selection is essential for your environment. Can affect service when used with collation parameters. See official docs. |
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
When the engine version of an instance group does not match the parameter group (e.g., after version upgrade), a Check Engine Version badge is displayed.
Click the Parameter Group menu, select the Instance tab, and check which instance group has a version mismatch. If the instance group changes to a parameter group with a matching version via the Change parameter group feature, the badge will disappear.
You cannot edit a parameter group with a mismatch badge for stability reasons. In such cases, review the mismatched instance group and switch to a proper parameter group with the correct engine version.
If you want to keep using existing parameter values, create a new parameter group that matches the engine version, and use the Load Existing Parameters feature in Modify parameter group to import the values.