✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

Cómo hacer una copia de seguridad de su base de datos MySQL usando PHP

174

¿Está buscando realizar una copia de seguridad de la base de datos en sus proyectos PHP? Siempre se recomienda hacer una copia de seguridad de su base de datos periódicamente. Al hacerlo, los datos de su sitio siempre estarán seguros en caso de que ocurra algún problema en su base de datos. En este artículo, le mostramos cómo hacer una copia de seguridad de la base de datos MySQL periódicamente y almacenarla en su servidor.

Este artículo está escrito para los proyectos que están integrados en PHP central y no con ningún CMS o Framework. El CMS como WordPress tiene varios complementos disponibles como UpdraftPlus para hacer una copia de seguridad de la base de datos. En los sitios web de Laravel, el usuario puede usar paquetes como laravel-backup para los mismos propósitos.

El equipo de Spatie ha desarrollado el paquete que es útil para realizar copias de seguridad de bases de datos en proyectos PHP centrales. Este paquete proporciona soporte para MySQL, PostgreSQL, SQLite y MongoDB. Discutiremos la base de datos MySQL en este artículo. Dicho esto, echemos un vistazo a cómo funciona este paquete para hacer una copia de seguridad de su base de datos.

Copia de seguridad de base de datos MySQL usando PHP

Antes de continuar, asegúrese de tener las credenciales de su base de datos y de que Composer esté instalado en su sistema.

A continuación, abra la terminal en el directorio raíz de su proyecto y ejecute el siguiente comando para instalar el paquete.

composer require spatie/db-dumper

Tras la instalación del paquete, cree un directorio db-backups(puede dar cualquier nombre) donde pueda almacenar sus archivos de respaldo SQL. También cree un archivo backup-database.phpy agregue el código a continuación.

<?php
require_once "vendor/autoload.php";
 
SpatieDbDumperDatabasesMySql::create()
    ->setDbName('DB_NAME')
    ->setUserName('DB_USER_NAME')
    ->setPassword('DB_PASSWORD')
    ->dumpToFile('db-backups/'.time().'_dump.sql');

Asegúrese de reemplazar los marcadores de posición con los valores reales. En el código anterior, agregamos la hora actual al archivo SQL para mantener distintos nombres de archivo. Volcará su base de datos y la almacenará en el archivo SQL dado.

El paquete ofrece más opciones al descargar la base de datos. Por ejemplo, puede excluir tablas específicas de la copia de seguridad proporcionando la matriz de exclusión de tablas como se muestra a continuación.

<?php
SpatieDbDumperDatabasesMySql::create()
    ->setDbName('DB_NAME')
    ->setUserName('DB_USER_NAME')
    ->setPassword('DB_PASSWORD')
    ->excludeTables(['table1', 'table2', 'table3'])
    ->dumpToFile('db-backups/'.time().'_dump.sql');

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

Hasta ahora, tiene un archivo PHP que realiza una copia de seguridad de su base de datos. Lo siguiente que debe hacer es automatizar el proceso de copia de seguridad para que pueda obtener sus copias de seguridad sin ejecutar el script manualmente.

Cuando aloja un sitio en el servidor, su proveedor de alojamiento le proporciona un cPanel donde puede ver las opciones básicas y avanzadas para administrar el sitio web. Una característica que proporcionaron es ‘Cron Jobs’. Los trabajos cron le permiten ejecutar un script específico (archivo PHP) en un cierto intervalo en segundo plano. Todo lo que necesita hacer es establecer un intervalo y pasar una ruta de directorio del archivo PHP. Después de esto, su servidor ejecuta su script en segundo plano en los intervalos especificados.

Para configurar un Cron, inicie sesión en su cPanel y haga clic en ‘Cron Jobs’ que puede encontrar en la sección ‘avanzado’.

Cómo hacer una copia de seguridad de su base de datos MySQL usando PHP

En la página siguiente, en la sección "Agregar un nuevo trabajo cron", elija el menú desplegable "Una vez al día" para "Configuración común". Significa que su secuencia de comandos se ejecutará una vez al día. El usuario puede establecer cualquier intervalo según el requisito.

Cómo hacer una copia de seguridad de su base de datos MySQL usando PHP

En la sección de comandos, pase la ruta del archivo PHP de la siguiente manera:

php /home/username/public_html/backup-database.php

Ajuste la ruta del script según sus configuraciones de alojamiento y envíelo. Después de esto, su servidor comienza a ejecutar un script todos los días a la medianoche. Y este script almacenará automáticamente su base de datos MySQL en el directorio especificado (por ejemplo, db-backups).

Esperamos que comprenda cómo hacer una copia de seguridad de la base de datos MySQL en PHP y automatizar el proceso usando Cron. Nos gustaría escuchar sus pensamientos o sugerencias en la sección de comentarios a continuación.

Fuente de grabación: artisansweb.net

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More