¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Respaldos Diarios Linux
Con un servidor instalando y una base de datos corriendo, es posible preparar el sistema para que lleve a cabo respaldos diarios (nocturnos) de la base de datos.
Requisitos
- Los paquetes básicos de Linux descritos en Base Helpcom.
- Python >= 2.7.
- Acceso a internet.
Preparación
Para estos pasos hacemos login como root
.
Instalamos los paquetes que sigue:
apt-get install python python-configparser python-dateutil python-pip fossil rsync
Si todo sale correctamente podemos terminar nuestra sesión.
Pasos
Configuración
Para estos pasos hacemos login con el usuario normal del sistema (p.ej.: administrador
).
Primero, creamos una carpeta con una estructura de archivos para almacenar los respaldos diarios.
administrador@host ~ $ mkdir -p respaldos/db administrador@host ~ $ mkdir -p bin/repolist
A continuación entramos a la carpeta respaldos
:
cd respaldos
, y desde ella descargamos el software de Helpcom respaldarv2
como se indica en el artículo (copiado aquí, pero la versión original puede estar más actualizada):
administrador@host ~/respaldos $ fossil clone https://chiselapp.com/user/lmachucab/repository/respaldarv2 respaldarv2.fossil administrador@host ~/respaldos $ fossil open respaldarv2.fossil
Esto crea una nueva carpeta con la ruta $HOME/respaldos/respaldarv2
, y dentro el script principal de trabajo, llamado respaldar.py
.
A continuación cruzamos en nuestro árbol de directorio para entrar a db
, y dentro debemos crear un archivo como por ejemplo cliente.ini
el cual guardará la configuración del cliente que queremos respaldar :
administrador@host ~/respaldos $ cd db administrador@host ~/respaldos/db $ nano cliente.ini
Aquí va un ejemplo de la configuración que se puede usar, cambiar según se necesite.
host=localhost port=3306 user=mysqldump pass=mysqldump db=db_crux_cliente options=--compact --single-transaction gzip=1
Con este archivo guardado volvemos a la terminal y hacemos una prueba para correr el software respaldar
para instalar los paquetes necesarios.
administrador@host ~/respaldos/db $ python ../respaldarv2/respaldar.py
Esto nos debiera indicar la lista de módulos que faltan, con el mensaje “necesita instalar el módulo…”. Para instalar los módulos necesarios debería bastar con los siguientes comandos:
pip install --user configparser tailer datetime
Prueba
Si todo está correcto, podemos llevar a cabo una prueba de descarga de base de datos. Tomar ojo que hacer este paso inicia una descarga y por tanto bloqueará equipos que estén conectados, como cajas.
administrador@host ~/respaldos/db $ python ../respaldarv2/respaldar.py cliente.ini
Si todo sale correcto debiéramos ver el proceso de descarga de la base de datos.
0 : Configurando respaldo desde cliente.ini 0 : Leyendo diccionario de configuración 1 : Invocando proceso de dump... 2 : Estado del dump... 2 : Recibido: ['-- Dump completed on 2018-11-30 10:58:14'] 2 : Salvado como localhost:3306-db_helpcom_cliente.sql
Puesta a Punto
Creamos una siguiente tarea en el crontab del usuario:
administrador@host ~/respaldos/db $ crontab -e
PATH=/usr/local/bin:/usr/bin:/bin 50 23 * * * cd respaldos/db && python ../respaldarv2/respaldar.py cliente.ini