Los archivos Undo_000 ocupan la mayor parte del disco, ¿puedo eliminarlos?

Los archivos Undo_000 ocupan la mayor parte del disco, ¿puedo eliminarlos?

Mi Webmin mostró un mensaje de error que decía que el disco está lleno. Tras investigar, encontré que 3 archivos en su interior /var/lib/mysqlhabían crecido demasiado:

  1. mysql.ibd (8.8G)
  2. deshacer_001 (8.4G)
  3. deshacer_003 (2.5G)

Busqué en Google para comprobar si estos archivos se pueden eliminar, pero la sugerencia iba en contra de mysql.ibd y no había información clara sobre undo_001 y undo_002.

¿Cómo puedo eliminar archivos de forma segura y cuál restaurar en el servidor? A partir de ahora, 0 bytes son gratuitos y no puedo hacer nada en el servidor.

Otra pregunta es cómo evitar que estos archivos crezcan tanto.

Los 3 archivos

Respuesta1

¿Cómo puedo eliminar archivos de forma segura y cuál restaurar en el servidor? A partir de ahora, 0 bytes son gratuitos y no puedo hacer nada en el servidor.

No directamente. Deberá eliminar tablas desde MySQL para liberar espacio. Tenga en cuenta que esto solo funciona para innodb si lo ha configurado. innodb_file_per_tableDe lo contrario, deberá eliminar tablas, crear un volcado de toda su base de datos y volver a cargarla (y sí... eso requiere espacio). De lo contrario, el archivo de la base de datos no se reducirá.

La ruta más sencilla sería eliminar otros archivos de su sistema.

Respecto al archivo 2 UNDO:

Los comandos para eliminar el espacio de tabla DESHACER:

ALTER UNDO TABLESPACE tablespace_name SET INACTIVE;
DROP UNDO TABLESPACE tablespace_name;

Y lo hace desde el indicador de MySQL. Perderá la capacidad de realizar una reversión.


No coloque su base de datos mysql en el mismo sistema que su sistema raíz. Utilice una partición o un disco diferente. Si solo usa 1 disco, solía ser común colocarlo /var/en su propia partición. Eso evitará que la raíz se llene por completo.

Para liberar espacio, eche también un vistazo a /var/log/Todo lo que esté .gzal final se puede eliminar. Lo mismo para archivos que terminan en un dígito *[0-9]. Todas esas son copias de seguridad de archivos de registro y, a veces, también tienden a crecer.


Esto truncará automáticamente los registros de deshacer:

SET GLOBAL innodb_undo_log_truncate=ON;

información relacionada