Copia de seguridad automática en Windows de base de datos MySQL

La copia de seguridad de datos siempre es muy importante en la forma en que opera cada sistema. En Linux puedes instalar fácilmente y automáticamente el comando Crontab, entonces, ¿qué pasa con Windows? Necesitamos escribir código en un archivo por lotes y configurar el programa de tareas en el sistema operativo Windows. Muy sencillo y rápido.

El programa de tareas está disponible en el sistema operativo Windows. Debe activarlo y asignarlo a un archivo por lotes. Nuestro problema es ejecutar en Windows, tal vez Windows 7, 10, servidor de Windows y hacer una copia de seguridad de los datos de MySQL.

La necesidad de preparar:

  1. Suponiendo que estamos usando Xampp, debemos encontrar la ruta del archivo mysqldump
  2. Prepare información sobre la base de datos: usuario, contraseña, nombre de la base de datos
  3. Prepare una ruta de almacenamiento de la base de datos. La base de datos en este artículo se guardará como el nombre de la carpeta de la base de datos, que contendrá el archivo mysql con formato Año-mes-fecha.sql

Haciendo:

  1. Abra el programa de tareas mediante el comando de búsqueda o en el Panel de control.
  2. Crear tarea básica
  3. Escriba el nombre de la tarea
  4. Seleccione el tiempo de ejecución automática: diario, semanal, mensual,…
  5. De forma predeterminada, la tarea funcionará inmediatamente después de que se complete la configuración. Puede pausar y finalizar la tarea en cualquier momento haciendo clic derecho y seleccionando Desactivar o Eliminar

En el archivo por lotes:

– rem: comenta tu código

– establecer fecha con formato Año-mes-día: %aaaa%-%mes%-%dd%

– crear carpeta BACKUPPATH: md %BACKUPPATH%

– use MYSQLDUMPFILE para exportar sus datos

%”
SET “Date=%yyyy%-%mth%-%dd%”
ECHO Backup data at Date: %Date%
ECHO/

https://googleads.g.doubleclick.net/pagead/ads?client=ca-pub-2413172347187252&output=html&h=280&adk=146456333&adf=639339380&pi=t.aa~a.1927373988~i.4~rp.4&w=796&fwrn=4&fwrnh=100&lmt=1700518085&num_ads=1&rafmt=1&armr=3&sem=mc&pwprc=3045525893&ad_type=text_image&format=796×280&url=https%3A%2F%2Fsoftdownloadfree.com%2Fautomatically-backup-mysql-database-with-batch-file-on-windows&ea=0&fwr=0&pra=3&rh=199&rw=795&rpe=1&resp_fmts=3&wgl=1&fa=27&uach=WyJXaW5kb3dzIiwiMTAuMC4wIiwieDg2IiwiIiwiMTE5LjAuNjA0NS4xNjAiLG51bGwsMCxudWxsLCI2NCIsW1siR29vZ2xlIENocm9tZSIsIjExOS4wLjYwNDUuMTYwIl0sWyJDaHJvbWl1bSIsIjExOS4wLjYwNDUuMTYwIl0sWyJOb3Q_QV9CcmFuZCIsIjI0LjAuMC4wIl1dLDBd&dt=1700517971122&bpp=2&bdt=679&idt=2&shv=r20231109&mjsv=m202311140101&ptt=9&saldr=aa&abxe=1&cookie=ID%3Df58cd4b0db5e9ee1%3AT%3D1699976365%3ART%3D1700517970%3AS%3DALNI_MaRoTeJJdFZi2qdXFqSQf8jbxRHDw&gpic=UID%3D00000da1c1da3c9d%3AT%3D1699976365%3ART%3D1700517970%3AS%3DALNI_MY0jGp_AO9oJkLvWA_Kj7U3xQENLg&prev_fmts=0x0%2C825x280%2C825x280%2C255x600&nras=4&correlator=5785650849099&frm=20&pv=1&ga_vid=678186920.1699976364&ga_sid=1700517971&ga_hid=2042831388&ga_fc=1&u_tz=-360&u_his=17&u_h=768&u_w=1366&u_ah=728&u_aw=1366&u_cd=24&u_sd=1.1&dmc=4&adx=73&ady=2647&biw=1226&bih=592&scr_x=0&scr_y=364&eid=44759876%2C44759927%2C44809317%2C31078301%2C31079756%2C44807763%2C44808148%2C44808284%2C44809054%2C44809071%2C318512601%2C21065725%2C31078663%2C31078665%2C31078668%2C31078670&oid=2&pvsid=2750707364223922&tmod=1252359269&uas=1&nvt=1&ref=https%3A%2F%2Fsoftdownloadfree.com%2Fcategory%2Fdatabase&fc=1408&brdim=0%2C0%2C0%2C0%2C1366%2C0%2C1366%2C728%2C1242%2C592&vis=1&rsz=%7C%7Cs%7C&abl=NS&cms=2&fu=128&bc=31&td=1&psd=W251bGwsbnVsbCxudWxsLDNd&nt=1&ifi=5&uci=a!5&btvi=3&fsb=1&dtd=M

rem —– Start set path and backup —–
set DATE=%Date%
set PATH=C:\dev\xampp\htdocs\your_folder\data-backup\
set MYSQLDUMPFILE=C:\dev\xampp\mysql\bin\mysqldump
set USER=root
set PASSWORD=

set DBNAME=YOUR_DATABASE_NAME

set BACKUPPATH=%PATH%\%DBNAME%

if not exist %BACKUPPATH% md %BACKUPPATH%

“%MYSQLDUMPFILE%” –user=”%USER%” –password=”%PASSWORD%” –result-file=”%BACKUPPATH%\%DATE%.sql” “%DBNAME%”

echo Done!
rem pause
exit

Eliminar archivos antiguos:

Con el tiempo, la cantidad de archivos de respaldo aumentará gradualmente. Si desea reducir el espacio de almacenamiento, la forma de hacerlo puede ser eliminar los archivos de copia de seguridad antiguos. Deje sólo los archivos más recientes.

El siguiente ejemplo mantendrá los 10 archivos más nuevos y eliminará los otros archivos antiguos:

echo Delete old files…

for /f “skip=10 delims=” %%a in (‘dir /a-d /o-d /b /s %BACKUPPATH%’) do DEL “%%a”

echo Done!

exit

Tiempo de configuración:

Si lo configura para que se ejecute automáticamente a la 1 a.m. todos los domingos, verá el archivo de respaldo en la carpeta C:\dev\xampp\htdocs\your_folder\data-backup\YOUR_DATABASE_NAME

2021-01-17.sql (created 01:00 am)

2021-01-24.sql (created 01:00 am)

2021-01-31.sql (created 01:00 am)

Deja un comentario