MariaDB y los formatos de registros


En las últimas versiones de MariaDB han cambiado el formato con que se guardan los registros en las tablas.
El tipo de format regula donde y como se almacenan los campos "BLOB" y "TEXT".

A partir de la versión 10.2.2 el formato standard es "Dynamic".

Las tablas contienen registros de longitud variable/dinámica, el almacenamiento consumido es menor, porque ciertos campos (blob y textos) son movidos a otra página de datos.
Para poder aprovechar este cambio debemos haber indicando que queres usar "un fichero por tabla" con estos parámetros.

innodb_file_per_table=1
innodb_strict_mode=1

El parámetro strict puede traer otros problemas, ya que modifica parámetros del motor y como debe reaccionar a la gestión de datos.

También se deberá verificar el formato de los ficheros en "innodb con
show variables like '%file_format%';


Información oficial de MariaDB aquí.
https://mariadb.com/kb/en/library/xtradbinnodb-storage-formats/

Información de MySQL.
https://dev.mysql.com/doc/refman/5.7/en/innodb-row-format.htmlhttps://dev.mysql.com/doc/refman/5.7/en/innodb-row-format.html

La manera de identificar tablas y que formato de registro tienen.
SELECT `table_name`, `row_format` FROM `information_schema`.`tables`;

SELECT `table_name`, `row_format` FROM `information_schema`.`tables` where row_format='Dynamic';


Como cambiar el formato de los registros.
use base1;
alter table TABLA1 ROW_FORMAT=Dynamic;


Para ver el standard para la versión y producto que tenemos corriendo.
SELECT @@innodb_default_row_format;

Comentarios

Entradas populares de este blog

Como ganar al apalabrados, trucos, trampas... y algo mas.

Una semana en la vida de un DBA (aún vivo)...