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

CREAR TABLA como SELECCIONAR - usando MEMORY ENGINE (en memoria RAM)

  • Sí, se puede hacer, pero no con una sintaxis simple CREATE TABLE t AS SELECT ... - deberá especificar las columnas de la tabla en declaración completa , Muestra:

    CREATE TABLE t (col1 INT(11), col2 INT(11)) 
    ENGINE=MEMORY 
    AS 
    SELECT * FROM another_t
    
  • Tamaño máximo de tabla por defecto si 16Mb , pero se puede ajustar con max_heap_table_size variable del sistema del servidor. Pero tenga en cuenta que este límite es por motor - no por mesa . Es decir. toda tu memory las mesas lo compartirán. Para restringir el tamaño de una tabla individual, deberá operar en sesión valor para max_heap_table_size , como

     mysql> SET max_heap_table_size = 24*1024*1024;