sql >> Base de Datos >  >> RDS >> Mysql

Número máximo de registros en una tabla de base de datos MySQL

El mayor valor de un número entero tiene poco que ver con el número máximo de filas que puede almacenar en una tabla.

Es cierto que si usa un int o bigint como su clave principal, solo puede tener tantas filas como la cantidad de valores únicos en el tipo de datos de su clave principal, pero no tiene que hacer que su clave principal sea un número entero. , podría convertirlo en CHAR(100). También puede declarar la clave principal en más de una columna.

Hay otras restricciones en el tamaño de la tabla además del número de filas. Por ejemplo, podría usar un sistema operativo que tenga una limitación de tamaño de archivo. O podría tener un disco duro de 300 GB que puede almacenar solo 300 millones de filas si cada fila tiene un tamaño de 1 KB.

Los límites del tamaño de la base de datos son realmente altos:

http://dev.mysql.com/doc /refman/5.1/en/source-configuration-options.html

El motor de almacenamiento MyISAM admite 2 filas por tabla, pero puede compilar MySQL con --with-big-tables opción para que admita hasta 2 filas por tabla.

http://dev.mysql.com/doc/refman /5.1/es/innodb-restricciones.html

El motor de almacenamiento InnoDB tiene un ID de fila interno de 6 bytes por tabla, por lo que hay un número máximo de filas igual a 2 o 281 474 976 710 656.

Un tablespace InnoDB también tiene un límite de tamaño de tabla de 64 terabytes. Cuántas filas caben en esto depende del tamaño de cada fila.

El límite de 64 TB asume el tamaño de página predeterminado de 16 KB. Puede aumentar el tamaño de la página y, por lo tanto, aumentar el espacio de tabla hasta 256 TB. Pero creo que encontrará otros factores de rendimiento que desaconsejan esto mucho antes de hacer crecer una mesa a ese tamaño.