Generar dumps versionables de la base de datos

Otro tip rápido: si deseas mantener un dump de tu base de datos en algún sistema de control de versiones con mysqldump, siempre utiliza la opción --skip-extended-insert.

¿Por qué? De modo predeterminado, mysqldump utiliza “extended inserts”, en los que una sola gran línea se ocupa de agregar múltiples registros a la base de datos. El problema es que estas sentencias por lo general van en una sola línea, por lo que si cambia cualquier dato en los muchos registros que se insertan en alguna de las tablas, el control de versiones identificará la diferencia de la línea y las diferencias entre cada versión serán muy grandes.

En comparación, al utilizar --skip-extended-insert cada INSERT usa una línea, por lo que sólo se registrarán las diferencias de las filas que tengan cambios. El dump será más grande, pero las diferencias entre cada versión son menores, y se almacenarán de modo más eficiente en tu control de versiones.

Por cierto, si tus tablas son de tipo InnoDB, recuerda también usar la opcion --no-autocommit para mejorar la velocidad de importación del dump.

2 thoughts on “Generar dumps versionables de la base de datos

Comments are closed.

%d bloggers like this: