Best Practices for MySQL Instance Configuration
Overview of Best Practices for MySQL Instance Configuration
In this section, we provide users with some package options and suggestions on parameter configuration mainly from two respects, namely, [MySQL RDS package selection](#MySQL RDS package selection's best practices ) and [MySQL Database Parameter Setting,](#Best Practices for the Setting of MySQL Database Parameters) assisting the users in configuring RDS instance as soon as possible.
Best Practices for MySQL RDS Package Selection
Baidu Public Cloud RDS MySQL provides users with common and updated MySQL versions like Version 5.5, Version 5.6, and Version 5.7. In addition, we provide multiple product packages for the users, with package specifications ranging from a single-core and 256M memory to 20-core and 64G memory. You may select the corresponding package according to your own service size and data volume. We give the following suggestions for your reference upon the creation of MySQL RDS instance.
Selection of MySQL Versions
- MySQL 5.5 is a popular version at present. From the angle of compatibility, Baidu Public Cloud RDS provides MySQL of this version. If the users want to migrate data from the current MySQL 5.5 database to the Baidu RDS MySQL database, they may choose this version from the angle of compatibility. However, those users who newly create MySQL data are not advised to choose this version, and we recommend using MySQL 5.6.
- MySQL 5.6 is a mainstream version at present and has a lot of new features and performance upgrades relative to MySQL 5.5. In most cases, the users are advised to choose MySQL of this version if there is no special reason. In addition, MySQL of this version supports semi-sync replication, providing users with higher security. For semi-sync, see the documentation on semi-sync replication.
- MySQL 5.7 is the up-to-the-minute stable version. Relative to previous versions, it brings in security performance and provides more features, for example, more SQL Modes, JSON data types in native support, group-based concurrent replication, and Group Replication. What's more, it has multiple performance upgrades. For more details on the list of new features and performance upgrades, see MySQL Official Documentation. Those users with high requirements about new features and performances may choose MySQL of this version. Like Version 5.6, Version 5.7 MySQL supports semi-sync replication as well.
Recommendations for RDS MySQL Package Selection
- CPU and memory selection
Product line | CPU/core | Memory/GB | Maximum local disk | Maximum linking number | Reference QPS |
---|---|---|---|---|---|
Small and micro type | 1 | 1 | 200G | 300 | 2400 |
Small and micro type | 1 | 2 | 500G | 560 | 3500 |
Standard | 1 | 4 | 1000G | 1050 | 4500 |
Standard | 2 | 8 | 1000G | 2000 | 6000 |
Standard | 4 | 16 | 3000G | 4000 | 10000 |
Standard | 8 | 32 | 3000G | 8000 | 18000 |
Standard | 16 | 64 | 3000G | 16000 | 28800 |
Standard | 32 | 128 | 3000G | 32000 | 34000 |
Enhanced Memory Type | 1 | 8 | 1000G | 2000 | 5000 |
Enhanced Memory Type | 2 | 16 | 3000G | 4000 | 7000 |
Enhanced Memory Type | 4 | 32 | 3000G | 8000 | 12000 |
Enhanced Memory Type | 8 | 64 | 3000G | 16000 | 20000 |
Enhanced Memory Type | 16 | 128 | 3000G | 32000 | 30000 |
Enhanced Memory Type | 32 | 256 | 3000G | 64000 | 40000 |
Enhanced Memory Type | 56 | 480 | 3000G | 100000 | 48000 |
Enhanced CUP Type | 2 | 4 | 1000G | 1050 | 5000 |
Enhanced CUP Type | 6 | 8 | 1000G | 2000 | 8000 |
Enhanced CUP Type | 8 | 16 | 3000G | 4000 | 12000 |
Enhanced CUP Type | 12 | 24 | 3000G | 6000 | 16000 |
Enhanced CUP Type | 16 | 32 | 3000G | 8000 | 20000 |
Enhanced CUP Type | 20 | 48 | 3000G | 12000 | 26000 |
Enhanced CUP Type | 20 | 64 | 3000G | 16000 | 30000 |
For every product line's applicable scenarios, see Product Series.
-
Disk capacity for selection
Baidu RDS MySQL provides users with local high-performance SSD disk capacities (5GB-1TB), and you may select proper disk size according to your own needs.
Suggestion: When selecting the package, you should take into account the matter that with the rise of service size, the requirement about the database's data processing and storage capacity becomes increasingly high. Of course, Baidu RDS for MySQL provides the package upgrading feature, and you may adjust and modify RDS for MySQL's package configuration at any time.
Recommendations for the Selection of RDS Package for "Games" Applications
Currently, most games adopt the "Given server for given zone" policy. In view of this, we recommend using "Global Database plus Sharding DRDS Database" solution in terms of database selection, as detailed below:
- Global data like login data, shopping mall data, and chat data are all saved in the global database;
- Games data are saved in different sub-tables of different database shards according to "Given server for given zone" policy;
For more details about distributed relational database service (DRDS), see DRDS Documentations or go to DRDS Homepage to apply for a free trial.