Copia de seguridad de mi sitio web: ¿cómo hacerlo y cuál es la estrategia de copia de seguridad recomendada? [cerrado]

3

Estoy ejecutando un sitio web LAMP en Linux 10.0.4 LTS. Soy un administrador de sistemas novato (aunque soy desarrollador) y estoy buscando algunos consejos sobre la mejor manera de implementar la copia de seguridad de mi sitio web. Mi base de datos es mySQL y TODAS mis tablas de base de datos usan el motor de base de datos InnoDb.

Estos son los requisitos para la copia de seguridad que quiero implementar:

  1. Incorpora copias de seguridad incrementales y completas de la base de datos mysql. Me gustaría tener copias de seguridad incrementales por hora, pero también copias de seguridad diarias, semanales y mensuales. Pero no tengo claro qué rotación usar para estos diversos conjuntos de datos de copia de seguridad, y también cómo administrarlos ( y, lo que es más importante, cómo restaurar la base de datos desde un conjunto de copias de seguridad completas / incrementales para una fecha)

  2. Me gustaría comprimir y cifrar los datos, para poder almacenarlos de forma remota (Amazon S3)

  3. Quiero tener esto completamente automatizado (es decir, ejecutarlo como un trabajo cron).

Nota: Mi servidor no tiene cabeza porque no tiene una ventana X u otra GUI instalada, así que estoy pensando en implementar la copia de seguridad en un script bash. Alternativamente, si hay un software que pueda ayudarme a ejecutar este tipo de copia de seguridad, entonces debe poder ejecutarse desde la línea de comandos.

Los elementos que necesito para hacer una copia de seguridad son:

  • base de datos mysql
  • archivos del sitio web (en una carpeta especificada. Idealmente, me gustaría omitir algunos archivos que se generan automáticamente)
  • Archivos de configuración
  • varios archivos de datos en diferentes carpetas

Aquí están mis preguntas:

  1. ¿Existe algún software existente que pueda usar para hacer esto o necesito escribir el mío (script bash)?

  2. ¿Cuál es la estrategia de copia de seguridad recomendada para usar (en términos de lo que se ejecuta cada hora, día, semana, etc.) y cómo restaurar el sitio web desde un momento determinado?

Si tengo que escribir mi propio script de bash (siendo un novato en scripts de bash también), estaré agradecido si alguien puede proporcionar un script de esqueleto para ayudarme a comenzar.

morfeo
fuente

Respuestas:

3

Lo usé rdiff-backupdurante años y es estable y puedes confiar en él. Realiza copias de seguridad incrementales de lo que le das. Entonces resolvería su problema con un script bash haciendo lo siguiente:

  1. mysqldump su base de datos
  2. archivar su base de datos
  3. rdiff-backup a ubicación remota.

Rdiff-backup almacena solo una vez que los archivos y todas las futuras copias de seguridad son adiciones incrementales y puede volver a cualquier copia de seguridad.

Otros pueden sugerir "rsnapshot", que es algo más rápido pero no guarda delta para archivos, solo para carpetas.

Patkos Csaba
fuente
Me doy cuenta de que esta es una vieja respuesta a una vieja pregunta, pero ¿ rdiff-backuppor qué en lugar de rsynccuál es, al menos para mí, la herramienta más utilizada?
JakeGould
0

Soy un gran admirador de DAR.

http://dar.linux.free.fr/

Tiene sus pros y sus contras, muchos de los cuales se pueden leer con un poco de amor de Google. Requiere bastante procesador (pero la mayoría de las soluciones incrementales son buenas), por lo que debe tenerse en cuenta si el servidor está en un entorno compartido (hosting compartido o VPS).

En cuanto a la estrategia, DAR es bastante fácil de implementar en un bash / python a través de la configuración CRON. Hay algunos scripts de bash preconstruidos en el sitio DAR para revisar y personalizar según sea necesario.

Puede cargar la copia de seguridad DAR y diffs a S3 a través de muchas aplicaciones S3 preconstruidas.

Como siempre, pruebe algunas soluciones para determinar qué es lo mejor / mejor para sus necesidades.

Cor
fuente
0

Administro 4 sitios web muy pequeños con bases de datos que rara vez cambian. Mi estrategia de copia de seguridad es mysqldump4 bases de datos, luego comprimir todo (el propietario de los sitios web usa Windows, por lo que los alquitranes están fuera de discusión), y luego usar WGET en la máquina del propietario para descargarlos. Fácil, gratuito, y utiliza herramientas estándar de Linux que rara vez se rompen.

TheLQ
fuente