Magento 2 Script de copia de seguridad de Base y Base de datos

Magento 2 Script de copia de seguridad de Base y Base de datos

Este tutorial lo ayudará a automatizar la base de código Magento2 y el proceso de copia de seguridad de la base de datos utilizando un script de shell. El script realizará copias de seguridad automáticas en un intervalo programado. El script también tiene la capacidad de eliminar las copias de seguridad anteriores según la configuración.

Configurar magerun2

Debe descargar y configurar el script Magerun2 en su sistema.

wget https: // archivos.magerun.net/n98-magerun2.PHAR MV N98-Magerun2.PHAR/USR/LOCAL/BIN/N98-MAGERUN2 CHMOD +X/USR/LOCAL/BIN/N98-MAGERUN2 

Descargar shell script

Puedes descargar el guión de copia de seguridad de Magento2 desde aquí. Alternativamente, use el siguiente comando para descargar el script usando el comando wget.

wget https: // tecadmin.net/wp-content/downloads/scripts/magento2-backup.mierda 

También puede copiar el script a continuación y pegarlo en un archivo en su máquina.

#!/bin/Bash ########################################## ####################################### ## ## Magento 2 Base de datos y base de código Script de respaldo ## Escrito por: Rahul Kumar ## Escrito en: 06 de marzo, 2020 ## Última actualización: 11 de marzo, 2020 ## ################## ############################################## ############### ################ Modificar a continuación los valores ########### ################################ magento_document_root = "/var/www/magento2" backup_path = "/var/ www/magento2/var/backups "backup_etain_days = 30 # Número de días para mantener una copia de copia de seguridad local gzip ="/bin/gzip "rm ="/bin/rm "mkdir ="/bin/mkdir "n98_magerun2 ="/usr /local/bin/n98-magerun2 "##################################### ############################################## ############# No cambie a continuación los valores ############# Ruta de exportación =/bin:/usr/bin:/usr/local/ bin Today = "$ (fecha"+%y-%m-%d-%h-%M ")" Current_backup_dir = "$ backup_path/$ Today" ########################### ############################################## ##### ################# Funciones ######################## ##### exit_on_error () echo -e "[correo electrónico protegido]" EXIT 99 mantenimiento_mode () $ n98_magerun2 sys: mantenimiento $ 1-skip-root-check-raot-diir = $ Magento_document_root check_cmds () [[ ! -x $ gzip] && exit_on_error "nombre de archivo $ gzip no existe. Asegúrese de que la ruta correcta esté configurada en la sección Config."[ ! -x $ rm] && exit_on_error "nombre de archivo $ rm no existe. Asegúrese de que la ruta correcta esté configurada en la sección Config."[ ! -x $ mkdir] && exit_on_error "nombre de archivo $ mkdir no existe. Asegúrese de que la ruta correcta esté establecida sección de configuración."[ ! -x $ n98_magerun2] && exit_on_error "nombre de archivo $ n98_magerun2 no existe. \ ndownload script de https: // archivos.magerun.net/ y asegúrese de que la ruta correcta esté configurada en la sección de configuración." create_backup_dir () [ ! -D $ current_backup_dir] && $ mkdir -p $ current_backup_dir database_backup () $ n98_magerun2 -skip-root-check --root-dir = $ magento_document_root dob: dump $ backbackup backupcheckup-dir = $ magento_document_root dob: dump $ backbackup backuphup-check-dir = $ magento_document_root dob: dump $ backbackup backbackup--feck-dir = $ magento_document_root dob: dump $ backbackup backbackup--dir = $ magento_document_root dob: dump $ backbackup-Check /base de datos-$ hoy.SQL si [$? -eq 0]; luego echo "Copia de seguridad de la base de datos completada con éxito" Else mantenimiento_mode --ff #### Disabilitar Mainenencia Incluso la copia de seguridad de la base de datos Falló Exit_on_error "Fallencia. "fi codebase_backup () cd $ magento_document_root && \ tar -cpzf $ current_backup_dir/codebase -$ hoy.alquitrán.gz --exclude = var/* . Si [$? -eq 0]; Luego, se eco "CodeBase Backup completó con éxito" Else Mantenance_Mode --Off #### Disabilitar Mainenence incluso CodeBase Backup fallida EXIT_ON_ERROR "CODEBASE COMBAJE FORAR. "Fi CleanUp_old_Backup () remove_dir_name =" date "+%y-%m-%d-%h-%m" --date = "$ backup_etain_days hace días" "si [[ ! -z $ backup_path]; Entonces cd $ backup_path if [ ! -z $ remove_dir_name] && [-d $ remove_dir_name]; Entonces rm -rf $ remove_dir_name fi fi ################################### ############################################### ################ Principal (funciones de llamadas) ################### CHECK_CMDS create_backup_dir mantenimiento_mode --on database_backup CodeBase_Backup Mantenance_Mode --Off Cleanup_old_Backup ######################################## ############################################## ############# El script termina aquí ################ ############# ############################################## ####################### 

Programar copia de seguridad SCRPT

Programe este script usando crontab en su sistema para ejecutarse diariamente. Use el siguiente comando para editar la configuración de Crontab:

crontab -e 

Y agregue la entrada a continuación al final del archivo.

0 0 * * * sh magento2-backup.mierda 

Guardar archivo y cerrar. Has programado con éxito Cronjob para funcionar a las 12:00 am diariamente. Para obtener más información sobre el uso del Cronjob, lea este tutorial.