Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 28 Next »

Unknown macro: {scrollbar}

Cómo borrar respaldos de exist-db para evitar falta de espacio en disco. Válido a partir de O3 BI versión 7.

Introducción 

Cuando se realiza una instalación de O3 BI, por defecto se crea una carpeta contenedora de respaldos de Exist-db, en <instalación o3>/ideasoft\o3bi\exist-db\data\backup

Esta base de datos xml almacena la metadata de O3 y se respalda a diario en forma automática, generando un archivo .zip cada vez. Su finalidad es disponer de un respaldo actualizado en caso de tener que restaurar la instalación de O3. En esa base de datos se guardan la mayoría de los artefactos creados en O3, en particular, los de mayor relevancia: las vistas de los cubos.

Esta frecuencia de respaldo hace que si no se controlan los archivos guardados, pueden terminar consumiendo espacio hasta llenar la unidad donde se encuentre la instalación de O3 BI.

En este escenario la base exist queda en modo Read-only, afectando la operativa normal de O3 BI (cubos se actualizan pero no quedan en línea, se presenta error al intentar guardar vistas). La forma de identificar con certeza esta situación es consultando server.log o el log de construcción de los cubos que no se encuentren disponibles, donde el mensaje es:

Error: Exception occured: ideasoft.o3.schema.O3Exception: Failed to invoke method parse in class org.exist.xmlrpc.RpcConnection: Database is read-only (08/01/2019 01:01:07)
Debug: ideasoft.o3.schema.O3Exception: Failed to invoke method parse in class org.exist.xmlrpc.RpcConnection: Database is read-only


Se propone un procedimiento manual a ejecutar por única vez, para solucionar el problema rápidamente y reestablecer el servicio de exist, y otro procedimiento a ejecutar con regularidad a través de una ejecución programada en el sistema operativo.

Procedimiento manual

  1. Confirmar que el problema es el que se describe. Ante la duda revisar logs o solicitar apoyo a Soporte de Ideasoft.
  2. Eliminar en forma manual todos los backups de exist en el directorio <instalación o3>/ideasoft\o3bi\exist-db\data\backup
  3. Asegurarse que se generó suficiente espacio libre, y que la falta de espacio no está siendo causada por otro sistema/proceso. Es relativo a cada servidor, pero una referencia de espacio disponible pueden ser al menos 10 GB.
  4. Reiniciar el servicio de exist (O3 metadata service en Windows, exist en Linux). Este paso es necesario únicamente para que eXist encuentre espacio disponible e inicie inmediatamente.


Procedimiento programado

Se propone un procedimiento para mantener acotada la cantidad de respaldos. A continuación se detalla el script a definir, tanto como para Windows como para Linux, para la eliminación de los respaldos.

Para Windows 

  1. Se debe crear un archivo batch (.bat), con el siguiente contenido:
@echo off
forfiles /P "C:\ideasoft\o3bi\exist-db\data\backup" /S /M *.* -d -30 /C  "cmd /c del @file /F"

"C:\ideasoft\o3bi" es la ubicación de la instalación de O3BI y "30" es la cantidad de días (respaldos) que se desea mantener, eliminando todos los que tienen mayor antigüedad.

2. Una vez definido el script, se debe programar su ejecución con el "Programador de tareas", con la frecuencia y en el horario que se consideren necesarias.


Queda a disposición para su descarga el script para Windows: BorrarBackupExist-db.bat



Para Linux

1. Se debe crear el script (.sh)  y otorgarle permisos de ejecución:

#!/bin/bash
find /opt/ideasoft/o3bi/exist-db/data/backup* -mtime +30 -exec rm {} \;

2. Se puede programar en cron el script, o directamente ejecutarlo como se explica a continuación:

0 5 * * * find /opt/ideasoft/o3bi/exist-db/data/backup* -mtime +30 -exec rm {} \;

Nota: En este ejemplo se va a ejecutar a las 05:00 AM diariamente


Queda a disposición para su descarga el script para Linux: (BorrarBackupExist-db.sh)





  • No labels