Cómo hacer una copia de seguridad automática de la base de datos MySQL usando PHP

Como Hacer Una Copia De Seguridad Automatica De La Base De Datos Mysql Usando Php



MySQL es un RDBMS de código abierto que puede crear, administrar y almacenar de manera eficiente grandes volúmenes de datos de forma estructurada. Para garantizar la seguridad de los datos, la copia de seguridad de la base de datos es una tarea importante. MySQL es compatible con muchos idiomas, por lo que para crear una copia de seguridad de una base de datos MySQL, el usuario puede escribir la secuencia de comandos en PHP, que es un poderoso lenguaje de secuencias de comandos.

Este artículo discutirá cómo crear una copia de seguridad de una base de datos MySQL usando PHP y automatizar el proceso de copia de seguridad.

Copia de seguridad automática de la base de datos MySQL usando PHP

Para escribir código PHP, abra cualquier editor de código. Para esta publicación, “ código de estudio visual ' esta siendo usado:









Cree un archivo PHP llamado “ db_backup.php ”:







Escriba este código y proporcione las credenciales de su base de datos MySQL:

definir ( 'DB_HOST' , 'su_host_mysql' ) ;

definir ( 'DB_USUARIO' , 'su_nombre_de_usuario_mysql' ) ;

definir ( 'DB_PASS' , 'tu_contraseña_mysql' ) ;

definir ( 'DB_NOMBRE' , 'su_nombre_de_base_de_datos' ) ;

Defina el directorio de copia de seguridad, donde se almacenarán los archivos de copia de seguridad:



definir ( 'BACKUP_DIR' , '/ruta/a/su/respaldo/directorio' ) ;

Establezca el formato de fecha para el nombre del archivo de copia de seguridad:

$fecha = fecha('Y-m-d_H-i-s');

Definir el ' archivo de respaldo ”:

$backup_file = BACKUP_DIR . '/' . DB_NOMBRE. '-' . $ fecha . '.sql';

Para crear un archivo de respaldo, use la utilidad mysqldump y proporcione las credenciales de la base de datos:

$command = 'mysqldump --user='.DB_USER.' --password='.DB_PASS.' '.DB_NAME.' > '.$backup_file;

sistema ($comando);

Comprima el archivo de copia de seguridad usando el botón “ gzip ' herramienta:

$gzip_command = 'gzip'.$backup_file;

sistema ($gzip_command);

Escriba este fragmento de código para eliminar los archivos de copia de seguridad antiguos, para esta publicación los archivos que son ' 7 ” días de edad serán eliminados:

$find_command = 'buscar '.BACKUP_DIR.' -type f -name '*.gz' -mtime +7 -delete';

system($buscar_comando);

Guarde el archivo y ejecútelo para confirmar si el archivo de copia de seguridad se crea o no. Abra la terminal del editor de código y escriba el comando para ejecutar el archivo:

php .\db_backup.php

Enumere el directorio para ver si existe el archivo de copia de seguridad. El resultado muestra el archivo de copia de seguridad que se creó correctamente:

Para automatizar el proceso de copia de seguridad, abra el menú de inicio, busque ' Programador de tareas ” y haga clic en el “ Abierto ' botón:

Desde el ' Comportamiento ” y presione el botón “ Crear tarea ' opción:

Se abrirá un nuevo asistente. Dirígete al “ General y proporcione el nombre de la tarea. Seleccione la opción que garantiza la copia de seguridad incluso si el usuario está desconectado:

Navegue hasta el “ disparadores pestaña ” y presione el botón “ Nuevo ' botón:

Selecciona la opción “ en un horario ”. Seleccione la hora programada como “ A diario ” y ajuste el “ Comenzar ' tiempo. En la configuración avanzada marque la opción “ Activado opción ” y presione el botón “ DE ACUERDO ' botón:

El estado cambiará a “ Activado ”:

Selecciona el ' Comportamiento pestaña ' y haga clic en ' Nuevo ' botón:

Escriba el nombre de 'Acción' y busque el ' programa/guion 'Archivo PHP que creó y' Agregar argumentos ” y haga clic en “ DE ACUERDO ”:

La acción se creará con éxito:

Ve a la ' Condiciones pestaña ' y marque la casilla de verificación ' Despierta la computadora para frotar esta tarea ”:

En el ' Ajustes ' y seleccione las opciones como se muestra en la salida y ajuste el tiempo para el reinicio y haga clic en ' DE ACUERDO ' botón:

Aparecerá el mensaje, escriba las credenciales y haga clic en ' DE ACUERDO ' botón:

Su base de datos MySQL se copiará automáticamente. Verifique el directorio de respaldo para ver los archivos de respaldo cuando sea necesario:

Ha creado con éxito el archivo PHP para hacer una copia de seguridad de la base de datos MySQL, luego, para automatizar el proceso de copia de seguridad, utilizó el Programador de tareas.

Conclusión

Use el editor de código para crear un archivo PHP, proporcione las credenciales de la base de datos MySQL y el formato de nombre y fecha del archivo de copia de seguridad. Utilice el comando mysqldump para crear un archivo SQL y la herramienta gzip para comprimir el archivo SQL. Utilice el Programador de tareas para la automatización del proceso de copia de seguridad. Esta publicación demostró cómo hacer una copia de seguridad automática de una base de datos MySQL usando PHP.