Backup,  Utilidades

Hacer un backup completo de SuiteCRM

SuiteCRM
SuiteCRM

SuiteCRM es un sistema open source basado en la versión libre de SugarCRM. Es una aplicación alternativa de código libre y abierto , y se basa en la última versión de código abierto, pero con módulos adicionales. Fue lanzado el 21 de octubre , 2013 como la versión 7.0 , y proporciona formas de actualización para los usuarios de SugarCRM existentes.

A la hora de realizar una copia de seguridad de la aplicación web podemos acudir al apartado de administración, aunque en ese caso no tendríamos una copia de la base de datos. Para hacer un backup de la base de datos y además realizar la copia de manera desatentida yo utilizo un sencillo script.

#!/bin/sh
####################################
#
# SuiteCRM Backup
#
# Author. Juan José Valera Flores
#
####################################

# Numero de copias / versiones que se van a mantener del CRM
copias=3

# Nombre de la Base de Datos
database="suitecrm"

# Origenes que se van a salvar: La página web y la base de datos
backup_sources="/var/www/alfacrm/ /tmp/"$database"_backup.sql"

# Destino de la copia
backup_target="/root/SuiteCRM/Backups"

# Nombre del archivo de copia
day=$(date +%Y%m%d)
archive_file=""$database"_Backup_"$day".tgz"

# Dump de la base de datos
# El usuario y contraseña está en sendos ficheros que sólo el admin puede ver,
# se evita así que aparezca en un simple PS.
mysqldump --databases $database --lock-tables --user=$(cat ~/scripts/.MySQL_U) --password=$(cat ~/scripts/.MySQL_P) > "/tmp/"$database"_backup.sql"

# TAR de la web y del backup de la Base de Datos
tar cvzf "$backup_target"/"$archive_file" $backup_sources

# Borrado del archivo temporal
rm -f /tmp/"$database"_backup.sql

# Proceso de borrado de copias obsoletas
NUMCOPIA=0
for COPIA in $(ls -t "$backup_target"/"$database"_Backup_*)
do
        if [ $NUMCOPIA -gt $copias ]; then
                rm -f $COPIA
        fi
        NUMCOPIA=$(($NUMCOPIA+1))
done

5 Comments

  • Carlos Saca

    Hola amigo mio, me podrias ayudar con informacion de como puedo hacer el respaldo desde el panel de administracion en sugar… Esque ya hago el respaldo pero no me aparece la carpeta donde hice el respaldo

    • jvalera

      Carlos, siento no poder ayudarte en tu consulta, ya que no realizo los backups desde la web. Yo hago los backups desde el sistema por comodidad y para tener también respaldo de la base de datos.

  • jvalera

    Sí Carlos, desde el panel de control se genera un .zip en un directorio con permisos de escritura con el árbol de directorios de SuiteCRM. Aunque, al hacer los backups desde scripts del sistema, no estoy familiarizado con esta opción del CRM

    • Enrique

      Hola, de antemano agradezco el post, ha sido de gran ayuda, yo tengo el sistema en windows con xampp, quedaria bien realizado el backup si corro un script copiando toda la carpeta xampp? y en caso de una emergencia instalar xampp y restaurar todo el contenido copiado? Mil gracias nuevamente

    • jvalera

      Hola Enrique, en un sistema xampp si no recuerdo mal tienes toda la información almacenada en la carpeta xammpp. Si haces una copia de la carpeta haces un backup de todos los datos, pero ten en cuenta que los servicios están corriendo teniendo archivos abiertos además de la base de datos. No suelo utilizar xampp, pero yo te recomendaría hacer un backup de los archivos por un lado así como de la base de datos con los comandos de mysql.

Deja una respuesta