DB Server

Prev Next

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:

clouddbformysql-dbserver-main-check_ko

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:

Note

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.

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Database > Cloud DB for MySQL.
  2. Click the DB Server menu.
  3. When the list of MySQL Servers you created appears, view the summary information or click MySQL Server to view the details.
    clouddbformysql-start_details_classic_ko.png
    • 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.
      • clouddbforpg_ico-02: 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
      • clouddbforpg_ico: 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
      • clouddbforpg_ico-02: 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.
      • clouddbforpg_ico-02: Click to enable or disable the backup feature or set the file retention period and backup cycle.
Note
  • 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.
Caution

If you clear the backup, all existing backup files are deleted.

Create MySQL Server

To create a MySQL Server in Classic environment:

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Database > Cloud DB for MySQL.
  2. Click the DB Server menu.
  3. Click [Create DB Server].
    database-database-5-2_create_ko.png
  4. When the service subscription page appears, take the following steps in order:
Note

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:

  1. When the Server settings interface appears, check the DBMS type to install on the server.
    database-database-5-2_create1_ko.png

    • DBMS type: Type of DBMS to install on the server
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.
  7. Click the [Next] button.

2. Set DB

To set the information for the MySQL to be installed:

  1. When the DB settings interface appears, enter the information required to create a MySQL Server.
    database-database-5-2_create2_ko.png
    • 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.
  2. 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
  3. Click the [Next] button.
  4. 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

  1. When the final confirmation interface appears, view the configured server information, DB information, and Backup information.
    database-database-5-2_create3_ko.png
    • Click [Previous] to edit the settings.
  2. Click [Create].
  3. 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
Note
  • 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:

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Database > Cloud DB for MySQL.
  2. Click the DB Server menu.
  3. Click the MySQL Server you want to restart, and then click [Restart DB Server].
  4. When the Restart DB Server popup window appears, view the name of the MySQL Server to restart, and then click [Yes].
  5. 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
Note
  • 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:

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Database > Cloud DB for MySQL.
  2. Click the DB Server menu.
  3. Click the MySQL Server you want to delete and click [Delete DB Server].
  4. When the Delete DB Server popup window appears, enter the name of the MySQL Server to delete, and then click [Yes].
  5. 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
Note
  • 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.

Note

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:

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Database > Cloud DB for MySQL.
  2. Click the DB Server menu.
  3. Click the MySQL Server you want to monitor, and then click [Monitoring].
  4. Click and select the dashboard you want to monitor.
    clouddbformysql-dbserver-monitoring-tab_ko

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.

Note

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:

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Database > Cloud DB for MySQL.
  2. Click the DB Server menu.
  3. Click the MySQL Server you want to manage, and then click [Manage DB].
  4. Click and select the item you want to manage.
    clouddbformysql-dbserver-db-tab_ko

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].

database-database-5-2_service1_vpc_ko.png

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:

Caution

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.

Note

In MySQL 5.7, you can change the lower_case_table_names settings in the Manage DB Config menus.

  1. Delete all tables, and retain 1 DB in lowercase letters.
  2. In the initialize DB Service page, click [Edit], change the settings, and then click [Change].
    database-database-5-2_service2_vpc_ko.png
  3. Click the [Save] button.
  4. 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.
  • Session ID: Unique session number
  • USER: User name of the connected session
  • HOST: HOST IP of the connected session
  • DB: DB name of the connected session
  • Command: Command executed by the connected session
  • Time: Execution time of the command (seconds)
  • State: Status of the connected session
  • Kill Session: Force terminate the selected session
  • Kill Multiple Session: Force terminate all selected sessions
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
  • Variables Name: Item of the applied variable
  • Value: Variable value
Status View the items and values of the status variables of the selected MySQL Server
  • Status Name: Item of the status variable
  • Status Value: Variable value
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.
  • Backup file retention period: 1 to 30 days
  • Backup time: backup is performed within 15 minutes from the selected time
DB Server Logs View log file information for the selected MySQL Server.
  • Log Name: Server log file name
  • File size (byte): Server log file size (byte)
  • Last Modified: The date when the Server log file was last modified
  • Send to Object Storage: Save the selected log file in Object Storage
  • Delete Log: Delete selected log file (log files being used by the server can't be deleted)
Note
  • 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.
Caution

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:

Note
  • 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 clouddbforpg_ico icon.

database-database-5-2_replication_vpc_ko.png

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.

database-database-5-2_db_vpc_ko.png

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.

Note

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:

  1. 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.
      dbserver-classic_addSlave_ko
  2. Click [Yes].

  3. 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:

  1. When the Change high availability settings popup window appears, view the basic server information.
    dbserver-classic_hachange_ko
  2. 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.
  3. Click [Yes].
  4. 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
Note

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.

Caution

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:

Note
  • You can change the specifications only within the same type of MySQL Servers.
  1. When the Change DB Server specifications popup window appears, view the current server specifications.
  2. Click and select the server specifications you want to change to.
    clouddbformysql-dbserver-classic_specChange_ko
  3. Click the [Save] button.
  4. 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:

Note

You can perform the same task from View DB server details > Manage DB Config.

  1. When the Database config popup window appears, view or enter the required information for editing.
    database-database-5-2_DBConfig_vpc_ko.png
    • Config Name: Name of config variable to set.
    • Config Value: Variable value.
    Note

    For more information on setting config variables, see MySQL official documentation (English).

  2. 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.
  3. Click the [Save] button.
  4. 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
Caution
  • 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.

Note
  • 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:

  1. When the Manage DB user popup window appears, perform the required tasks for the user account.
    database-database-5-2_user_vpc_ko

    • 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.
  2. Click the [Save] button.

  3. 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
Caution
  • 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
Caution
  • 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';
Note

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."
Caution

Cloud DB for MySQL may not operate normally when password expiration is set for the following accounts:

  • ha_admin, repl_admin, agent, radmin, MySQL.*
Note

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.%');
Note

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:

  1. 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.
  2. Click [Import DB account].
  3. 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:

  1. When the Change DB Server log settings popup window appears, see the following to change the settings:
    database-database-5-2_serverlog_vpc_ko.png
    • 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
  2. Click the [Save] button.
  3. 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
Note
  • General query log is loaded only when enabled general_log from Manage DB > Manage DB Config.
  • To load logs into TABLE, you must use Cloud DB for MySQL 8 or later and change log_output to 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_output settings.
  • If log_output is set as TABLE, it is unable to check the logs from Cloud Log Analytics and Monitoring > DB Logs.
  • If log_output is 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.

database-database-5-2_publicDomain_vpc_ko.png

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:

  1. When the Master DB failover popup window appears, view the displayed information.
    database-database-5-2_failover_vpc_ko.png
  2. Click [Yes].
  3. 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].

database-database-5-2_upgrade_vpc_ko.png

  • 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.

Caution
  • 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].

Note
  • 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.

database-database-5-2-1_upgrade_vpc_ko.png

When the following error occurs after the upgrade inspection, the upgrade is not possible:

  • Upgrade inspection result: Error example
    database-database-5-2-2_upgrade_vpc_ko.png

Once the upgrade inspection is completed, click [Yes] on the precaution popup window.
database-database-5-2-3_upgrade_vpc_ko.png

database-database-5-2-4_upgrade_vpc_ko.png

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:

Caution

If the server name is changed, then the DB Server Log before the change can't be viewed (Monitoring > DB Logs)

database-database-5-2_changeServerName_vpc_ko

  1. When the Change DB Server name popup window appears, view the applicable DB Server and its current server name.
  2. 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.
  3. Click [Yes].
  4. 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.

Caution
  • 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.
Note

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.

Note

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.

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Networking > Load Balancer.
  2. Click the [Create Load Balancer] button.
  3. 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.
  4. Add servers to apply to the Load Balancer, and then click [Next].
  5. 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:

Note

In this section, we will briefly introduce how to set up ACG. For more information on how to set ACG, see ACG user guides.

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Compute > Server.
  2. Click the ACG menu.
  3. Select the ACG name of the MySQL Server, and click [Set ACG].
  4. 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
  5. Click the [Add] button.
  6. 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:

  1. In the Classic environment of the NAVER Cloud Platform console, navigate to i_menu > Services > Networking > Load Balancer.
  2. Select a Load Balancer to check.
  3. Click [Check Load Balancer status] to check the status.
    • If the status is not displayed as Success, then check the ACG settings again.
      database-database-5-2_checklbstatus_ko