This topic describes the limits of PolarDB for MySQL.
Limits
Product series | Node type CPU and memory | Memory used by file system | Maximum number of files | Maximum connections |
Cluster Edition (Dedicated) | polar.mysql.x4.medium 2 cores, 8 GB | 800 MB | 1,024,000 | 6,000 |
polar.mysql.x4.large 4 cores, 16 GB | 1,300 MB | 2,048,000 | 8,000 | |
polar.mysql.x4.xlarge 8 cores, 32 GB | 2,400 MB | 4,096,000 | 10,000 | |
polar.mysql.x8.xlarge 8 cores, 64 GB | 3,500 MB | 6,144,000 | 16,000 | |
polar.mysql.x8.2xlarge 16 cores, 128 GB | 10,240 MB | 20,480,000 | 32,000 | |
polar.mysql.x8.4xlarge 32 cores, 256 GB | 10,240 MB | 20,480,000 | 64,000 | |
polar.mysql.x8.8xlarge 64 cores, 512 GB | 10,240 MB | 20,480,000 | 64,000 | |
polar.mysql.x8.12xlarge 88 cores, 710 GB | 10,240 MB | 20,480,000 | 100,000 | |
Cluster Edition (General-purpose) | polar.mysql.g2.medium 2 cores, 4 GB | 800 MB | 1,024,000 | 1,800 |
polar.mysql.g4.medium 2 cores, 8 GB | 800 MB | 1,024,000 | 2,000 | |
polar.mysql.g2.large 4 cores, 8 GB | 1,300 MB | 2,048,000 | 3,000 | |
polar.mysql.g4.large 4 cores, 16 GB | 1,300 MB | 2,048,000 | 6,000 | |
polar.mysql.g2.xlarge 8 cores, 16 GB | 1,300 MB | 2,048,000 | 6,000 | |
polar.mysql.g4.xlarge 8 cores, 32 GB | 2,400 MB | 4,096,000 | 10,000 | |
polar.mysql.g4.2xlarge 16 cores, 64 GB | 3,500 MB | 6,144,000 | 16,000 | |
polar.mysql.g4.4xlarge 32 cores, 128 GB | 10,240 MB | 20,480,000 | 32,000 |
The parameters in the preceding table are described as follows:
Memory used by file system
This parameter specifies the amount of memory that the file system uses when the cluster reaches its storage limit and performs normal read and write operations. Normal operations do not include stress testing or Data Definition Language (DDL) operations on large tables. If the cluster has not reached its storage limit, the file system uses less memory than this value.
Maximum number of files
This limit includes user files, database system files (about 100), and log files. To view the number of log files, you can run the
SHOW POLAR LOGScommand. A non-partitioned PolarDB table uses one file. A partitioned table usesN+1files, where N is the number of partitions. If you try to create a table after the file limit is reached, the following error is returned:ERROR 3017 (HY000): Too many files. PolarDB only supports 2048 files every 10GB disk size. Please drop some tables/databases before creating new tablesIn this case, you can delete some tables or upgrade the cluster specifications.
Maximum connections
The maximum number of connections in the table applies to a single node, not the entire cluster.
Other limits
Operation | Constraint |
Table name | The name of a table in a cluster can be up to 64 letters and digits or 50 Chinese characters in length. |
Serializable isolation level | Not supported. |
FAQ
Q: Can I create 10,000 databases in PolarDB? What is the maximum number of databases?
A: Yes, you can create 10,000 databases in PolarDB. Although PolarDB does not limit the number of databases, the maximum number is determined by the cluster specifications and the maximum number of files.
Q: Compared with native MySQL, what is the maximum data volume that a single table can store in PolarDB?
A: A single table can store up to 64 TB of data.
Q: Is the number of read-only nodes related to the maximum number of connections? Can I increase the maximum connections by adding read-only nodes?
A: The number of read-only nodes is not related to the maximum number of connections. The maximum number of connections for PolarDB is determined by the node specifications. To increase the number of connections, you must manually change the cluster specifications.
Q: How many tables can I create in a database for a PolarDB cluster?
A: There is no limit on the number of tables that you can create in a database. This behavior is consistent with the official MySQL version. The InnoDB storage engine lets you create up to 4 billion tables. However, the available storage space limits the number and size of tables. You can calculate the number of tables based on the available space. For example, a 10 GB disk has a maximum of 2,048 inodes, and each inode corresponds to one file. A non-partitioned PolarDB table uses one file, whereas a partitioned table uses
N+1files, whereNis the number of partitions.Q: Does a PolarDB cluster support superusers?
A: No, superusers are not supported.