Diferencia entre revisiones de «Copias de seguridad»
Sin resumen de edición |
Sin resumen de edición |
||
| Línea 13: | Línea 13: | ||
No toma argumentos. Pide varios datos: IP, usuario, base de datos y contraseña. Con esto genera una nueva linea en Crontab. | No toma argumentos. Pide varios datos: IP, usuario, base de datos y contraseña. Con esto genera una nueva linea en Crontab. | ||
La linea de Crontab sera algo parecido a lo siguiente: | |||
0 0 * * * mysqldump -h 192.168.1.126 -u Fran -pFranPassword --skip-ssl baseradius > /home/me/backups/backup_$(date).sql | |||
La base de datos se copia cada madrugada a las 0:0, una copia de unos 500 usuarios puede pesar en torno a los 22KB. | |||
==== Manualmente ==== | ==== Manualmente ==== | ||
Revisión actual - 13:23 30 dic 2025
¿De que son las copias?
Las copias de seguridad estan compuestas por un archivo "sql", este archivo se puede restaurar en un servidor de bases de datos.
¿Como se hacen las copias?
Hay dos formas de hacer copias de seguridad. Automaticamente y manualmente.
Automaticamente
Se hacen a traves de un script, el cual se ejecuta en la maquina CLIENTE (La que respaldara los datos), esto guarda una copia de la base de datos de RADIUS, ya que es el unico activo de software importante en toda la configuracion, pues el resto se puede recrear muy facilmente.
Esto se guarda en nuestro crontab. (De la maquina cliente)
El script esta en aux/backup.sh.
No toma argumentos. Pide varios datos: IP, usuario, base de datos y contraseña. Con esto genera una nueva linea en Crontab.
La linea de Crontab sera algo parecido a lo siguiente:
0 0 * * * mysqldump -h 192.168.1.126 -u Fran -pFranPassword --skip-ssl baseradius > /home/me/backups/backup_$(date).sql
La base de datos se copia cada madrugada a las 0:0, una copia de unos 500 usuarios puede pesar en torno a los 22KB.
Manualmente
Para generar una copia manual de nuestra base de datos, solo tenemos que hacer una consulta de MySQL, podemos usar el comando mysqldump, siguiendo la siguiente estructura:
mysqldump (base de datos)
Si estamos haciendolo como superusuario (Y no hemos configurado contraseña) (Mira SQL), en caso de que estemos como un usuario, podemos hacerlo tal que:
mysqldump -u (Usuario) -p (base de datos)
Lo que significa -u para el siguiente usuario y -p para la contraseña (que nos la pedira) en la siguiente linea.
Tambien podemos pasar la contraseña tal que asi:
mysqldump -u (Usuario) -p(Contraseña) (base de datos)
Notese que la contraseña va INMEDIATAMENTE DESPUES de la bandera -p, esto es obligatorio, si no, MariaDB/MySQL saltara la opcion y la tomara como el nombre de la base de datos.
El comando completo para copiar nuestra base de datos, por ejemplo, seria:
mysqldump -u Fran -pFranPassword baseradius
O, si lo hicieramos como superusuario, seria solo:
mysqldump baseradius
¿Que hago con este texto?
Los comandos anteriores te van a enseñar un monton de lineas de datos, estas lineas no estan hechas para leerlas. Esto es para enviarlo a un archivo, o a otra base de datos, por ejemplo, podemos guardar el archivo como:
(comando anterior) > $HOME/$(date).sql
Lo que guardaria el archivo en nuestra carpeta home, en un archivo parecido a:
/root/dom 21 dic 2025 14:46:26 CET.sql
Este archivo luego se puede restaurar o enviar/guardar (en/a) otros sitios.