Available in Classic
In DB Server, you can create or delete MySQL Server and view the list of MySQL Server in operation. In addition, you can change the specifications of the MySQL Server in operation or manage admin (user) accounts.
DB server page
The basics of using MySQL Server are as follows:

| Component | Description |
|---|---|
| ① Menu name | Shows the current menu name and number of MySQL Server in operation. |
| ② Basic features | Create MySQL Server, view details of Cloud DB for MySQL, download the DB Server list, and refresh DB Server page. |
| ③ Post-creation features | Restart, delete, monitor, and manage MySQL Servers in operation. |
| ④ MySQL Server list | View the list and information on MySQL Servers in operation. |
| ⑤ Search | Search for the desired server by server name from the MySQL Server list. |
View MySQL Server list
From the list of MySQL Servers that have been created and are currently operating, you can view the information on each server. To view:
You can view the list only when there are 1 or more servers in operation. If you do not have any servers created and operating, no list appears on the DB Server interface.
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Database > Cloud DB for MySQL. - Click the DB Server menu.
- When the list of MySQL Servers you created appears, view the summary information or click MySQL Server to view the details.
- DB Services name: Service name of MySQL, a group that classifies MySQL Server by role. This generally refers to a server group that consists of one Master Server, one Standby Master Server, or multiple Slave Servers. MySQL servers with the same data are referred to as the same Service.
: Click to change the service name.
- DB Role: MySQL server's role
- Master: Master Server when the Support high availability is selected.
- Standby Master: Standby Server when the Support high availability is selected. If Master Server fails, then it automatically performs the role of Master.
- Stand Alone: Unit Server when the Support high availability is not selected.
- Recovery: The read-only server restored using a backup. It can be changed to a new serviceable DB server upon creating a new DB service
- DB Server name: MySQL server's name
- DB Server Type: Type of the MySQL Server and its available memory.
- Data storage: Size of the data storage in use (available capacity)
- Status: MySQL server's status
- Creating: Status in which the MySQL Server is being created with the information you entered.
- Configuring: Status in which the MySQL Server is being configured after being creating with the information entered by the user
- Running: Status in which the creation and configuration of the MySQL server has been completed with the information entered by user, and access to the MySQL from the application servers is available
- Deleting: Status in which the created MySQL Server is being deleted with the information you entered.
- Stop: Status in which the MySQL Server with the information you entered is being stopped.
- Restarting: Status in which the created MySQL Server is restarting with the information you entered.
- **Restoring ** (Standby Master): Standby Master Server is being replaced due to a failure, but the Master Server is operating normally * Zone: Indicates the Zone to which the MySQL Server belongs
- Zone: Service zone
- Monitoring: Go to the Monitoring page.
- DB Status: Go to MySQL server's View details page.
- Private domain: Private domain information
- Public domain: Information of the public domain that allows external access
- This is displayed only when Public domain is enabled through Public domain management features in the Manage DB menu.
- Created date: Date when the MySQL Server was created and the initial point when the server status entered the creating status.
- Running date: Date when the MySQL Server operation started and the initial point when the DB server status entered the "running" status.
- Data storage type: Type of data storage in use
- Data storage capacity: Available capacity and usage of the data storage in use
- ACG: ACG name and ID used in the MySQL Server
: Click to move to Server > ACG.- [View rules] button: Click to view the detailed rules applied.
- DB engine version: Version information of the MySQL installed on the Server.
- DB License: License information of the MySQL installed on the server
- High availability: Whether to use the high availability feature with Y or N
- DB access port: Name of the port used by the MySQL Server
- Database Config: Config applied to the MySQL server
: Click to go to the Database Config interface
- Backup storage period (backup time): The configured backup file storage period and backup cycle, if the backup feature is enabled.
: Click to enable or disable the backup feature or set the file retention period and backup cycle.
- DB Services name: Service name of MySQL, a group that classifies MySQL Server by role. This generally refers to a server group that consists of one Master Server, one Standby Master Server, or multiple Slave Servers. MySQL servers with the same data are referred to as the same Service.
- Master Server is the server that is important for performing database-related operations.
- While MySQL Server is being operated normally, the Standby Master Server does not perform any roles and replicates the Master Server's data as it is. If Master Server fails and can no longer be operated normally, then it automatically performs a failover where Standby Master Server takes over the role of the Master Server.
If you clear the backup, all existing backup files are deleted.
Create MySQL Server
To create a MySQL Server in Classic environment:
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Database > Cloud DB for MySQL. - Click the DB Server menu.
- Click [Create DB Server].

- When the service subscription page appears, take the following steps in order:
Click [subscribe] from the NAVER Cloud Platform portal’s Services > Database > Cloud DB for MySQL to directly go to the page in step 3.
1. Set Server
To create a Server to install MySQL by entering the settings:
-
When the Server settings interface appears, check the DBMS type to install on the server.

- DBMS type: Type of DBMS to install on the server
-
View the version and license information of the MySQL version to be installed.
- DB engine version: Information of the MySQL version that can be created on NAVER Cloud Platform
- DB license: Open-source license information of MySQL that can be created on NAVER Cloud Platform.
-
Set the Zone and MySQL Server-related items required for MySQL Server creation.
- Zone: Select the Zone to create the MySQL server in.
- DB Server Type: Select the MySQL Server type to be created and available memory according to the server type.
- Data storage type: Click to select the storage type for saving DB data, between SSD and HDD.
- The settings can't be changed after the creation of the MySQL Server.
- Data storage capacity: Check storage capacity for DB data storage.
- 10 GB is allocated upon initial creation of the MySQL Server.
- The capacity is automatically added in 10 GB units and charged as data increases.
- Supports up to 6000GB.
-
Set Support high availability for the availability of the server to be created.
- When you select it, set redundancy with 2 MySQL Servers, a Master Server and a Standby Master Server.
- Performs a Failover for automatic recovery in case of failure
- When selected, set backup file retention period and backup time (default: 1 day, automatic)
- When selected, disabling the storage of backup files is not possible.
- When selected, additional fees will be incurred.
- The Standby Master Server is not accessible by individual users.
-
View the applicable pricing plan information when using Cloud DB for MySQL.
- Pricing plan: An hourly pricing plan, which is billed based on the hours used, is applied by default, and it is changed depending on the server specifications and storage capacity.
- For more information, click Pricing information.
-
Set the rest of the items required to create the MySQL Server.
- DB Server name: Enter the name of the MySQL Server to create
- Enter between 3 and 25 characters using lowercase English letters, numbers, and hyphens (-).
- It must start with an English letter and end with an English letter or a number.
- To identify servers, random text and a 3-digit number are assigned automatically after the name you entered. Example: mysql-001-xxxx.
- Duplicate names are not allowed.
- DB Service name: Enter the group name that classifies MySQL Servers to be created by its role. Example: mysql-service.
- Enter between 3 and 30 characters using Korean letters, English letters, numbers, and hyphens (-).
- Duplicate names are not allowed.
- Set ACG: Access Control Group (ACG) is created automatically.
- The detailed settings for the ACG are available from Server > ACG in the console.
- DB Server name: Enter the name of the MySQL Server to create
-
Click the [Next] button.
2. Set DB
To set the information for the MySQL to be installed:
- When the DB settings interface appears, enter the information required to create a MySQL Server.
- USER_ID: Enter the account ID of the MySQL server admin.
- Enter between 4 and 16 characters using English letters, numbers, and special characters such as _ and -.
- The first character must be an English letter.
- You cannot use predefined reserved words.
- HOST (IP): Enter the IP address to access the MySQL Server.
- Enter "%" to permit access from all IP addresses.
- For specific IP access only, enter the designated address. Example: 123.123.123.123.
- For specific IP range permissions, enter the range pattern. Example: 123.123.%.
- USER password: Enter the account password of the MySQL server admin.
- Enter 8 to 20 characters using at least 1 English letter, number, and special character.
- The special characters ` & + \ " ' / or spaces can't be used.
- DB access port: Enter a number between 10,000 to 20,000 as a TCP port number to allow access to the MySQL server that will be created
- Default: 3306
- The port number can't be changed after it is specified.
- Default DB name: Enter the default DB name.
- Enter between 1 and 30 characters using English letters, numbers, and special characters such as _ and -.
- The first character must be an English letter.
- DB Config settings: View the optimized basic settings provided by NAVER.
- View details > you can view and change the content from DB Config.
- Collect DB log: View the provision of log collection and viewer features for error logs and slow query logs.
- Cloud Log Analytics integrations.
- USER_ID: Enter the account ID of the MySQL server admin.
- Set whether to use backup for the server.
- Backup settings: Set whether to use the backup, backup file retention period, and backup time.
- Use the backup settings for the MySQL Server: Click and select to use for backup.
- Backup file retention period: Select by clicking the period to store the backup file in a separate backup storage.
- For point-in-time recovery, the backup file is stored for the maximum of the set retention period + 24 hours.
- Only backups for tables created with the InnoDB engine are supported.
- Backup time: Select the backup time between automatic and user-defined.
- If you select this, additional fees will be incurred depending on the storage capacity used.
- Automatic: Backup is automatically started every day.
- User-defined: The backup is started every day within 15 minutes from the time specified by the user
- Backup settings: Set whether to use the backup, backup file retention period, and backup time.
- Click the [Next] button.
- When the Request subscription to Cloud Log Analytics appears, view the content, and click [OK].
- If you need to subscribe to Cloud Log Analytics, click [Subscribe to Cloud Log Analytics].
- For more information on Cloud Log Analytics, see Cloud Log Analytics user guides.
3. Final confirmation
- When the final confirmation interface appears, view the configured server information, DB information, and Backup information.
- Click [Previous] to edit the settings.
- Click [Create].
- View the status of the MySQL Server that was created from the server list on the DB Server page.
- Creating: Status in which the MySQL Server is being created with the information you entered.
- Configuring: Status in which the MySQL Server is being configured after being creating with the information entered by the user
- Running: Status in which the creation and configuration of the MySQL server has been completed with the information entered by user, and access to the MySQL from the application servers is available
- To view the latest status from step 3, click [Refresh].
- It may take several minutes or longer until it enters the Running status, and is available for actual use, after going through Creating and Configuring statuses.
Restart MySQL Server
You can easily and conveniently restart MySQL Servers. You can't access servers while they're being restarted. To restart:
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Database > Cloud DB for MySQL. - Click the DB Server menu.
- Click the MySQL Server you want to restart, and then click [Restart DB Server].
- When the Restart DB Server popup window appears, view the name of the MySQL Server to restart, and then click [Yes].
- View the status of the MySQL Server from the MySQL Server list on the DB Server page.
- Stopping: status in which the MySQL Server operation is being stopped
- Restarting: status in which the MySQL Server is restarting
- The process may take a few minutes as the system progresses through stopping and restarting states before reaching the running status where actual usage becomes available.
- Restarting Master Server will not cause failover to proceed. Failover will automatically proceed only if a failure occurs.
Delete MySQL Server
You can delete a MySQL Server that has been created and is in operation.
If you're using high availability, then both Master Server and Standby Master Server will be deleted. If you have Slave Servers, you must first delete all Slave Servers from the DB Service before deleting the Master Server. If you're using the backup feature, then the backup files are also deleted.
To delete MySQL Servers:
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Database > Cloud DB for MySQL. - Click the DB Server menu.
- Click the MySQL Server you want to delete and click [Delete DB Server].
- When the Delete DB Server popup window appears, enter the name of the MySQL Server to delete, and then click [Yes].
- View the status of the MySQL Server from the MySQL Server list on the DB Server page.
- Deleting: status in which a MySQL Server is being deleted
- The actual deletion from the list after going through the Deleting status may take several minutes.
Monitoring MySQL Server
NAVER Cloud Platform's Cloud DB for MySQL provides a monitoring service through the dashboards on each server. This allows you to intuitively view servers in operation and data status, and efficiently manage them.
For more information on Monitoring, see Monitoring.
To go to the monitoring page of the MySQL Server that has been created and is in operation:
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Database > Cloud DB for MySQL. - Click the DB Server menu.
- Click the MySQL Server you want to monitor, and then click [Monitoring].
- Click and select the dashboard you want to monitor.

Manage MySQL Server
While operating the created MySQL Server, you may need to change the options of the server or DB configured upon creation. Cloud DB for MySQL supports changes or upgrades of a certain number of specifications simply through a few clicks, even for MySQL Servers that have already been created.
By default, managing a MySQL Server is available when the server status is running.
To manage a MySQL Server that has been created and is in operation:
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Database > Cloud DB for MySQL. - Click the DB Server menu.
- Click the MySQL Server you want to manage, and then click [Manage DB].
- Click and select the item you want to manage.
View DB Service details
You can enable or disable Swap memory for the MySQL Server within the selected DB Service, or reset the DB Service.
Set Swap Memory
To set the MySQL Server belonging to the selected DB Service to use or not use Swap Memory, navigate to [Edit] on the Swap Memory settings interface, change the settings, [Change], and then [Save].

Consider the following items when you change the Swap Memory settings:
- When you change the Swap Memory settings, all MySQL Servers in that DB Service are restarted.
- 2 GB is added to the Swap Memory.
- The task for changing the Swap Memory settings is carried out sequentially 1 by 1, and it takes about 1 minute for each server.
- In the case of a high availability server, master DB failover is automatically performed to minimize impact on the service. (After the task is completed, master and standby master role are changed.)
- The settings change task is conducted in the following order: Recovery -> slave -> master.
- While the swap settings task is in progress, connection errors to the service may occur due to the access block to the DB. Thus, conducting server checks is recommended upon completion of the change task.
Reset DB Service
Reset the DB Service required when changing the lower_case_table_names DB Config setting in MySQL 8.0.
To reset a DB Service:
When you change the lower_case_table_names DB Config settings after the reset, the data restoration to any preceding point in time becomes unavailable. Make sure to review carefully before initializing and changing.
In MySQL 5.7, you can change the lower_case_table_names settings in the Manage DB Config menus.
- Delete all tables, and retain 1 DB in lowercase letters.
- In the initialize DB Service page, click [Edit], change the settings, and then click [Change].

- Click the [Save] button.
- From the confirmation popup window, click [Yes].
- The reset is processed. The access to the MySQL Server becomes unavailable while the reset is being processed.
View DB Server details
You can view the details related to the server to check if the selected MySQL Server is operating properly. The details are as follows:
| View details tab | Description | Item |
|---|---|---|
| Process list | View the sessions currently accessed to the selected MySQL Server. |
|
| Replication (Standby Master, Slave Server) |
View the items and values of variables applied to the replication of the selected MySQL Server. | See View replication status |
| Variables | View the items and values of the variables applied to the selected MySQL Server |
|
| Status | View the items and values of the status variables of the selected MySQL Server |
|
| Manage Database | Add DB to selected MySQL Server or delete them. | For more information, see Manage Database. |
| Manage DB Config | Change settings for selected MySQL Server. | For more information, see Manage DB Config. |
| Manage DB user | Add or delete users to selected MySQL Server. | For more information, see Manage DB user. |
| Manage Backup settings | Set backup file retention period and backup time for selected MySQL Server. |
|
| DB Server Logs | View log file information for the selected MySQL Server. |
|
- When sending to Object Storage, unlocking bucket, appropriate access control, and ACL settings are required.
- For the Japan Region, disable access control settings for the Object Storage bucket.
- Exporting to Object Storage may take several minutes to be completed.
Additional fees apply when you subscribe to Object Storage. For more information on Object Storage and its pricing plans, see Service > Storage > Object Storage in NAVER Cloud Platform portal.
Kill Process execution through user-provided Stored Procedure
You can perform a kill process in the form of a stored procedure with a user account with the DDL permissions from the Master Server and Slave Server. You can only kill an existing process ID but cannot kill a process that is being run by system account. The user ID "agent," "radmin," "ha_admin," "repl_admin," and "system user" do not have the Kill Process permission.
Run the following command to perform kill process through the user-provided stored procedure:
mysql> call sys.ncp_kill_session (session ID);
- A procedure that allows you to use the kill connection feature with super privileges
mysql> call sys.ncp_kill_query (session ID);
- A procedure that allows you to use the KILL Query feature with super privileges
View Replication status
You can view the replication status of the Standby Master and Slave Servers, take action to skip query with replication errors, or reinstall the DB. Replication delays can occur if the Master Server has query that takes a long time to perform write, or if an excessive number of write tasks occur. The detailed descriptions on the replication page are as follows:
- This is the same as the result of the
show slave status;commands used in MySQL. - In the event menu, you can set notifications for replication delays.
- In the case of the Standby Master Server, you can go to the page through the DB status
icon.

Variables Name / Value
displays the variable items and values for the replication.
[Skip Replication Error] button
Skips the query where a replication error occurred. However, data inconsistency with the Master Server may occur during the skipping process, so it is recommended to proceed with the following methods to ensure that the data remains the same:
- For Standby Master Server
- Reinstall the applicable Standby Master DB.
- For Slave Server
- Add a new Slave and delete the current Slave.
- Reinstall the applicable Slave DB.
[Reinstall Standby Master] button
Reinstall Standby Master DB. DB reinstallation takes backup data from the master DB and configures a standby master DB again. You cannot control the console until reinstallation is completed. The task may take anywhere from dozens of minutes to a few hours depending on the data size.
[Reinstall Slave DB] button
Reinstall the Slave DB. The access to the Slave Server is not available during the reinstallation. The access domain for the Slave Server does not change after the reinstallation.
[View running binary log] button
Click to view the running binary log. If the replication is being performed properly, then the following message is displayed: "There is no binary log running." If the replication is delayed or stopped, then the currently running binary log is displayed.
Manage Database
You can add a DB to the selected MySQL Server or delete a DB you created. Up to 1,000 DB can be added, and the addition or deletion tasks can be performed for up to 10 DB at a time.
To perform a DB addition or creation task, click [Add Database] to add a DB, or click [Delete] in the same row as the created DB to delete the DB.

Add DB using user-provided Stored Procedure
You can add DB more conveniently from the Master Server by using the DB addition feature in the form of a stored procedure with a user account with DDL permissions. Such an account has all permissions for the added DB, and it can grant permissions for the DB to other user accounts through GRANTcommands. The added DB is also created automatically in the connected Slave Servers.
Run the following command to add a DB using the user-provided stored procedure:
mysql > call sys.ncp_create_db('name of DB to be created [required]','Character Set [select]','Collation [select]');
--Examples
① All character sets and collations are user-specified.
mysql> CALL sys.ncp_create_db('testdb','utf8','utf8_general_ci');
② Character set and collation are specified as mysql server default.
mysql> CALL sys.ncp_create_db('testdb','','');
③ Character set: User-specified; collation: mysql server default
mysql> CALL sys.ncp_create_db('testdb','utf8','');
Add Slave Server
You can add Slave Servers to your MySQL Servers that use the high availability settings. Up to 10 Slave Servers can be added per Master Server, and added Slave Servers could be integrated into NAVER Cloud Platform's Load Balancer to be configured for read load balancing.
- You can't add Slave Server to the Stand Alone Server.
- For more information on read load balancing, see read load balancing settings.
The settings of the Master Server are identically applied to the Slave Servers.
- MySQL Server type
- Data storage type
- Data storage capacity
- DB Config settings
The same fees apply to the Slave Servers as to the Master Server, and the fees are charged based on the hours used. To add Slave Server:
-
When the Add Slave DB Server popup window appears, view the Master Server and the Slave Server information.
- For Multi Zone configurations, select the subnet where you want to create the Slave Server.

- For Multi Zone configurations, select the subnet where you want to create the Slave Server.
-
Click [Yes].
-
View the status of the Slave Server that was created from the MySQL Server list on the DB Server page.
- Creating: Status in which the Slave Server is created with the information you entered.
- Configuring: Status in which the Slave Server is created and configured with the information you entered.
- Running: Status in which the creation and configuration of the Slave Server has been completed with the information entered by user, and access to the Slave Server from the application server is available
Change high availability settings
You can change the selected MySQL Server into a Stand Alone or high availability configuration. To change:
- When the Change high availability settings popup window appears, view the basic server information.

- Enable to set Stand Alone if the existing high availability setting is Y, and high availability if the existing high availability setting N.
- If changing to a high availability configuration, click and select whether to use a Multi Zone.
When selected, 1 Primary DB and 1 Secondary DB are created in different zones to provide higher availability.
- If changing to a high availability configuration, click and select whether to use a Multi Zone.
- Click [Yes].
- View the status of the MySQL Server from the MySQL Server list on the DB Server page.
- Configuring: Status in which the MySQL Server is being configured after being creating with the information entered by the user
- Running: Status in which the creation and configuration of the MySQL Server has been completed with the information entered by user, and access to the MySQL Server from the application server is available
DB backup is performed on the standby master at the point of performing backup. Therefore, even if the master is changed while using the product, backup is not performed at the master.
Change MySQL Server specifications
You can change the server specifications for the MySQL Server you've created. When changing the server specifications, the specifications for the Master, Standby Master, Slave, and Recovery Servers are also changed. Additional fees are incurred for upgrading specifications.
The servers will restart when you upgrade server specifications. As access is unavailable during the restart, it is recommended to view the data after the restart is completed.
To change the specifications:
- You can change the specifications only within the same type of MySQL Servers.
- When the Change DB Server specifications popup window appears, view the current server specifications.
- Click and select the server specifications you want to change to.

- Click the [Save] button.
- View the status of the MySQL Server with the modified specifications from the MySQL Server list on the DB Server page.
- Configuring: Status in which the MySQL Server is configured with the information you entered.
- Running: Status in which the configuration of the MySQL Server has been completed with the information entered by user, and access to the MySQL Server from the application server is available
Manage DB Config
You can change various settings for the created MySQL Server. The changed settings are applied to the entire DB Service, and some config variables are applied after an automatic restart of the DB Service upon the change. To change:
You can perform the same task from View DB server details > Manage DB Config.
- When the Database config popup window appears, view or enter the required information for editing.
- Config Name: Name of config variable to set.
- Config Value: Variable value.
NoteFor more information on setting config variables, see MySQL official documentation (English).
- Click the [Add] button.
- When editing the added config variable: Click the [Edit] button.
- When deleting the added config variable (setting it to default), click the [Delete] button.
- Click the [Save] button.
- View the status of the MySQL Server with the modified config from the MySQL Server list on the DB Server page.
- Configuring: Status in which the MySQL Server is configured with the information you entered.
- Running: Status in which the configuration of the MySQL Server has been completed with the information entered by user, and access to the MySQL Server from the application server is available
- If the set config values are not appropriate, then the MySQL Server may not operate properly. Make sure to fully understand the action of the config variable before applying the settings. If a problem occurs in the server operation due to incorrect settings, contact the customer center.
- If logs (binary, error, slow, general log) are set to be collected through manage DB Config, they are stored in the data storage area of the DB Server, and fees will occur according to the usage.
Manage DB user
When you create a MySQL Server, the ID and password for the account that will use the server are created by default. However, while operating the server, you may need to add users or reset the passwords of existing user accounts. You may also need to delete user accounts. Cloud DB for MySQL provides a user management features that enables you to conveniently add, edit, and delete user accounts that use the server. The results of the user account change through the user management features are applied to the entire DB Service. Up to 1,000 user accounts can be added.
- You can only use this feature in Master Servers and Stand Alone Servers.
- You can perform the same task from View DB server details > Manage DB user.
To add or delete user accounts or change the password of the existing admin account:
-
When the Manage DB user popup window appears, perform the required tasks for the user account.

- Add user account: Enter information in USER_ID, HOST (IP), DB permissions, and password, and click [Add DB User].
- All DB permissions include the execute permission of the system DB.
- The CRUD permission includes the READ permission, and the DDL permission includes the READ and CRUD permissions.
- View procedure can be performed by any account regardless of permissions. For more information, see Official MySQL document (English).
- Delete user account: Click the [Delete] button in the same row as the user account to be deleted.
- Edit user account password: Click the [Edit] button in the same row as the user account to be edited, and click the [Save] button after editing.
- Add user account: Enter information in USER_ID, HOST (IP), DB permissions, and password, and click [Add DB User].
-
Click the [Save] button.
-
View the status of the MySQL Server to set user from the MySQL Server list on the DB Server page.
- Configuring: Status in which the MySQL Server is configured with the information you entered.
- Running: Status in which the configuration of the MySQL Server has been completed with the information entered by user, and access to the MySQL Server from the application server is available
- When deleting a user account, note that the applications using the account being deleted can't be accessed.
- If creating a DB user ID with characters not permitted on the console, it cannot be edited or deleted. Directly access the DB Server to make a change.
List of permissions for an account with DDL/CRUD/READ permissions
[List of permissions for an account with DDL permissions]
- If MySQL DB version is below 8.0.23
GRANT PROCESS, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT, CREATE USER ON *.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT SELECT ON `mysql`.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT SELECT, EXECUTE ON `sys`.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT ALL PRIVILEGES ON `[사용자 DB]`.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT SELECT ON `performance_schema`.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone_transition_type` TO '[User name]'@'[HOST IP]'
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone` TO '[User name]'@'[HOST IP]'
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone_name` TO '[User name]'@'[HOST IP]'
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone_transition` TO '[User name]'@'[HOST IP]'
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone_leap_second` TO '[User name]'@'[HOST IP]'
- If MySQL DB version is 8.0.23 or higher
GRANT PROCESS, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT, CREATE USER ON *.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT FLUSH_TABLES,SHOW_ROUTINE ON *.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT SELECT ON `mysql`.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT ALL PRIVILEGES ON `[사용자 DB]`.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT SELECT, EXECUTE ON `sys`.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT SELECT ON `performance_schema`.* TO '[user name]'@'[HOST IP]' WITH GRANT OPTION
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone_leap_second` TO '[User name]'@'[HOST IP]'
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone_name` TO '[User name]'@'[HOST IP]'
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone_transition_type` TO '[User name]'@'[HOST IP]'
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone_transition` TO '[User name]'@'[HOST IP]'
GRANT INSERT, UPDATE, DELETE ON `mysql`.`time_zone` TO '[User name]'@'[HOST IP]'
[List of permissions for an account with CRUD permissions]
GRANT PROCESS, SHOW DATABASES, REPLICATION CLIENT ON *.* TO `[사용자명]`@`[HOST IP]`
GRANT SELECT ON `mysql`.* TO `[사용자명]`@`[HOST IP]`
GRANT SELECT, EXECUTE ON `sys`.* TO `[사용자명]`@`[HOST IP]`
GRANT SELECT, INSERT, UPDATE, DELETE, REFERENCES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, SHOW VIEW, EVENT ON [User DB].* TO `[사용자명]`@`[HOST IP]`
GRANT SELECT ON `performance_schema`.* TO `[사용자명]`@`[HOST IP]`
[List of permissions for an account with READ permissions]
GRANT PROCESS, SHOW DATABASES, REPLICATION CLIENT ON *.* TO `[사용자명]`@`[HOST IP]`
GRANT SELECT ON `mysql`.* TO `[사용자명]`@`[HOST IP]`
GRANT SELECT, EXECUTE ON `sys`.* TO `[사용자명]`@`[HOST IP]`
GRANT SELECT, LOCK TABLES, EXECUTE, SHOW VIEW ON [User DB].* TO `[사용자명]`@`[HOST IP]`
GRANT SELECT ON `performance_schema`.* TO `[사용자명]`@`[HOST IP]`
Cloud DB for MySQL management account
The Cloud DB for MySQL management account information used for the user virtual machine is as follows:
| Account name | Account description |
|---|---|
| radmin | Account that applies details requested by users on the console to the actual database |
| ha_admin | Database account used for auto failover when the master DB fails |
| repl_admin | replication account for MySQL Slave Server synchronization |
| agent | Account that collects database monitoring metrics |
- USER_ID of an account that is the same as that of the management account can't be used.
- If the management account is edited or deleted, then the use of the Cloud DB for MySQL product features is limited.
Create accounts with permissions for specific tables
If you want to add a user account with permissions only for a specific table, then create an account with DDL permission, access the system with the account, and create a new account.
To create a new account while accessing a user account that has DDL permission, run the following command:
create user '[user name]'@'[HOST IP]' identified by '[password]';
grant SELECT on [DB name].[table name] to 'user name'@'[HOST IP]';
flush privileges;
-- Examples
create user 'test'@'1.1.1.1' identified by 'test123';
grant SELECT on test_db.test_table to 'test'@'1.1.1.1';
For more information on how to directly create an account from the MySQL Server, see Official MySQL documentation (English).
Expiration of Cloud DB for MySQL account passwords
You can directly set the password expiration period for the DB account.
- The expiration period can be set only in number of days (DAY, 1 to 65535).
- The expiration period is based on when the account was created or when the account's password was last changed.
- Expiration settings can only be performed with a user account with DDL privileges.
- Expiration removal can be performed only for yourself and other users when executing with a user account with DDL privileges, and only for yourself when executing with a user account with CRUD and READ privileges.
Run the following command when setting password expiration:
# Set expiration immediately upon execution
CREATE USER '[user name]'@'[HOST IP]' IDENTIFIED BY '[password]' PASSWORD EXPIRE;
ALTER USER '[user name]'@'[HOST IP]' PASSWORD EXPIRE;
ㅤ
# Set with custom value
CREATE USER '[user name]'@'[HOST IP]' IDENTIFIED BY '[password]' PASSWORD EXPIRE INTERVAL [ ] DAY;
ALTER USER '[user name]'@'[HOST IP]' PASSWORD EXPIRE INTERVAL [ ] DAY;
Run the following command when removing password expiration:
ALTER USER '[user name]'@'[HOST IP]' IDENTIFIED BY '[password]';
- When removing expiration with the above statement, the password expiration period is reset to the previously set lifetime value.
Run the following command to view the expiration period set for a password:
SELECT password_last_changed, password_lifetime
FROM mysql.user
WHERE user='[user name]' AND host='[HOST IP]';
- password_last_changed: The time when the account was created or the password was last changed
- password_lifetime: Expiration period set for the password
- password_last_changed + password_lifetime: time when the password expires
- When password_lifetime is "0," the password never expires.
- When password_lifetime is "NULL," it automatically has the default value of the MySQL Server. Currently, the default value for Cloud DB for MySQL is "0."
Cloud DB for MySQL may not operate normally when password expiration is set for the following accounts:
- ha_admin, repl_admin, agent, radmin, MySQL.*
- If you are using jdbc, set "disconnectOnExpiredPasswords" of jdbc to false to reuse an account whose expiration date has passed. Then log in and remove the expiration period settings to use it.
- MySQL 5.7 disconnect_on_expired_password reference guide (English)
- MySQL 8.0 disconnect_on_expired_password reference guide (English)
Apply and reclaim Role with user-provided Stored Procedure
In MySQL 8.0 and later, in VPC, you can apply and reclaim role in a stored procedure form with a user account with DDL permissions. You cannot use Cloud DB for MySQL administration accounts and MySQL default accounts, and you must create Role and grant permission to role directly.
Use the following commands to apply role to a user account with the user-provided stored procedure, or to reclaim an applied role:
- Apply role to user account.
mysql> call sys.ncp_grant_role('role user[required]', 'role host[required]', 'user account user[required]', 'user account host[required]');
- Reclaim applied role to user account.
mysql> call sys.ncp_revoke_role('role user[required]', 'role host[required]', 'user account user[required]', 'user account host[required]');
- Examples
① Create role and grant permissions to role.
mysql> CREATE ROLE 'new_role';
mysql> GRANT SELECT, INSERT ON `testdb`.* TO 'new_role';
② Apply role to user account.
mysql> CALL sys.ncp_grant_role('new_role', '%', 'ddl_user', '10.100.%');
③ Enable role.
mysql> SET ROLE 'new_role';
④ Reclaim role from user account.
mysql> CALL sys.ncp_revoke_role('new_role', '%', 'ddl_user', '10.100.%');
When creating role without specifying the host portion like CREATE ROLE 'Role User';, all hosts (%) are automatically added.
mandatory_roles, activate_all_roles_on_login, and edit variables features are not supported.
For each variable, see the following:
- mandatory_roles: use it after granting permission with ncp_grant_role before using DB account.
- activate_all_roles_on_login: specify role to enable access on log in using the SET DEFAULT ROLE syntax.
Import DB account information
By importing account information, you can view and delete the information of accounts created directly by users in MySQL Server from the console.
To import DB account information:
- Select the MySQL Server from which the account information is to be fetched, and then navigate to Manage DB > View DB Server details > Manage DB user.
- Click [Import DB account].
- On the confirmation popup window, click [Import].
Change DB Server Log settings
You can change the log rotation and storage settings for the MySQL Server you created. The changes are applied to the entire DB Service. To change:
- When the Change DB Server log settings popup window appears, see the following to change the settings:
- Log: View server log name
- Log Rotate: Set the log rotation to be performed daily or by size.
- Log file: Number of log files to be stored
- Click the [Save] button.
- View the status of the MySQL for which you've set server logs from the server list on the DB Server page.
- Configuring: Status in which the MySQL Server is configured with the information you entered.
- Running: Status in which the configuration of the MySQL Server has been completed with the information entered by user, and access to the MySQL Server from the application server is available
- General query log is loaded only when enabled
general_logfrom Manage DB > Manage DB Config. - To load logs into TABLE, you must use Cloud DB for MySQL 8 or later and change
log_outputto TABLE from Manage DB Config. - Only slow query log and general query log can be stored in table. The rest of the logs are stored to file regardless of the
log_outputsettings. - If
log_outputis set as TABLE, it is unable to check the logs from Cloud Log Analytics and Monitoring > DB Logs. - If
log_outputis set as TABLE, the log table retains data for 7 days, and the retention count cannot be edited. - Previous logs cannot be automatically deleted when changing the log rotate type. Delete unnecessary logs using the [DB status] > [DB Server logs] tab > [Delete log] feature.
Manage public domain
You can request a Public domain to allow access to a MySQL Server from the outside of NAVER Cloud or to remove a configured public domain. Upon configuring a public domain, the data communicated from the outside is charged based on network usage.
To set or remove a Public domain, click the Manage public domain, and then click [Yes] from the popup window that appears.

Master DB Failover
If the Master Server fails, you can directly use the failover feature to switch from the master to Standby Master Servers. The switch takes approximately 2 minutes, and the server access is unavailable during the switch. To switch:
- When the Master DB failover popup window appears, view the displayed information.

- Click [Yes].
- View the status of the MySQL for which you've set the DB failover from the MySQL Server list on the DB Server page.
- Configuring: Status in which the MySQL Server is configured with the information you entered.
- Running: Status in which the configuration of the MySQL Server has been completed with the information entered by user, and access to the MySQL Server from the application server is available
MySQL Engine Upgrade
-
MySQL Engine's Minor version upgrade
The MySQL Engine minor version can be upgraded. The version upgrade is applied to the entire DB Service, and the upgrade is performed 1 server at a time in the following order: Recovery -> slave -> master. The server access becomes unavailable during the upgrade, and the Master Server is switched to the Standby Master Server to keep the service access block to a minimum.
To upgrade the minor version of the MySQL Engine, click the MySQL engine upgrade, select the version you want to upgrade to from the popup window that appears, and then click [Yes].

-
MySQL Engine's major version upgrade
You can upgrade major version of the MySQL Engine. The version upgrade is applied to the entire DB Service, and the upgrade is performed 1 server at a time in the following order: Recovery -> slave -> master. The server access becomes unavailable during the upgrade, and the Master Server is switched to the Standby Master Server to keep the service access block to a minimum.
- It is recommended to proceed with the upgrade after the application version compatibility review due to major version upgrade.
- Major version upgrade is only available when it is in the high availability configuration.
- While major version upgrade is in progress, the automatic recovery failover feature does not work in case of failure.
- When you upgrade major version, rollback to the previous major version is not possible.
- When you upgrade major version, the DB Config's default value may change.
- When you upgrade major version, point-in-time recovery before the upgrade is not possible.
- When you upgrade major version, the backup file of the version before the upgrade can only be made for new service creation.
To upgrade major version of the MySQL Engine, click the MySQL engine upgrade, select major version upgrade and select the version you want to upgrade to from the popup window that appears, then click [Upgrade inspection].
- The inspection duration for major version upgrades may extend depending on the total number of DB objects.
- Prior to executing major version upgrades, all stored procedures, stored functions, triggers, and events created within the DB must be created or changed to ensure compliance with ANSI_QUOTES.
- As the quantity of Recovery Servers increases, the duration required for major version upgrade execution correspondingly extends.

When the following error occurs after the upgrade inspection, the upgrade is not possible:
- Upgrade inspection result: Error example

Once the upgrade inspection is completed, click [Yes] on the precaution popup window.


You can view the upgrade in progress through DB Server status.
Change DB Server name
You can change the selected MySQL Server name. All DB Server names in the DB Server list are changed, and sections that are automatically generated after the server name are not changed. All servers stop operating while DB Server names are changed, so access to the DB Server is limited while names are being changed.
To change:
If the server name is changed, then the DB Server Log before the change can't be viewed (Monitoring > DB Logs)

- When the Change DB Server name popup window appears, view the applicable DB Server and its current server name.
- Enter the DB Server name to change.
- Enter between 3 and 20 characters using lowercase English letters, numbers, and hyphens (-).
- It must start with an English letter and end with an English letter or a number.
- Duplicate names are not allowed.
- Click [Yes].
- View the status of the MySQL Server for which the DB Server name was set in the server list on the DB Server interface.
- Configuring: Status in which the MySQL Server is configured with the information you entered.
- Running: Status in which the configuration of the MySQL Server has been completed with the information entered by user, and access to the MySQL Server from the application server is available
Set read load balancing
You can apply for NAVER Cloud Platform's Load Balancer to distribute the read load on the MySQL Server and connect it to a Slave Server. After creating the Load Balancer, proceed in the order of adding settings to the ACG of MySQL Server so that the created Load Balancer can have normal access.
- Additional fees apply when you request a subscription to Load Balancer. To access information about Load Balancer introduction and pricing plans, see Services > Storage > Load Balancer on NAVER Cloud Platform portal.
- Only Slave Server can be connected to the Load Balancer, and only the Slave Servers that belong to the same DB Service can be bound to a single Load Balancer.
The following briefly describes how to set Load Balancer: For more information on how to set up Load Balancer, see Load Balancer user guides.
Create Load Balancer
To create a Load Balancer in Classic of the NAVER Cloud Platform console.
In this section, we will briefly introduce how to create a Load Balancer. For more information on how to create it, see Guide on creating Classic Load Balancer.
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Networking > Load Balancer. - Click the [Create Load Balancer] button.
- Enter the information required for the creation of the Load Balancer by referring to the Load Balancer user guides in the Note section, and then click [Next].
- For network type, select Private IP.
If you select the public IP network type, the DB server will not be visible when adding the server. - Make the following Load Balancer settings:
- Protocol: TCP
- Load Balancer port: Load Balancer port number you want to use
- Server port: number of the DB server you want to access
- You can check the proxy protocol if you want to confirm the client IP.
If a DB user is created with the Load Balancer IP, then it can't be accessed if the proxy protocol is activated.
- For network type, select Private IP.
- Add servers to apply to the Load Balancer, and then click [Next].
- View the settings, and then click [Create Load Balancer].
Set ACG
Add ACG rules to the Access Control Group (ACG) of the DB Server so that the Load Balancer can access it properly. To set:
In this section, we will briefly introduce how to set up ACG. For more information on how to set ACG, see ACG user guides.
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Compute > Server. - Click the ACG menu.
- Select the ACG name of the MySQL Server, and click [Set ACG].
- Enter the following ACG rules for Load Balancer access:
- Protocol: TCP
- Access source
- VPC: IP address range of the Load Balancer subnet
- Classic: ncloud-load-balancer
- Allowed port: MySQL Server Port
- Click the [Add] button.
- Click the [Apply] button.
View Load Balancer
Views the details and access information of created Load Balancers. The access information is used to confirm the IP for accessing the Load Balancer and when accessing it for read balancing.
For Classic, check if the connection status of the applied server is displayed as Success. To view:
- In the Classic environment of the NAVER Cloud Platform console, navigate to
> Services > Networking > Load Balancer. - Select a Load Balancer to check.
- Click [Check Load Balancer status] to check the status.
- If the status is not displayed as Success, then check the ACG settings again.

- If the status is not displayed as Success, then check the ACG settings again.