Magento 2 Code-base et script de sauvegarde de la base de données

Magento 2 Code-base et script de sauvegarde de la base de données

Ce tutoriel vous aidera à automatiser le processus de base de base de code Magento2 et de base de données à l'aide d'un script shell. Le script effectuera des sauvegardes automatiques sur un intervalle planifié. Le script a également la possibilité de supprimer les anciens sauvegardes selon la configuration.

Configuration de Magerun2

Vous devez télécharger et configurer le script Magerun2 sur votre système.

wget https: // fichiers.magen.net / n98-Magerun2.Phar MV N98-Magerun2.phar / usr / local / bin / n98-magerun2 chmod + x / usr / local / bin / n98-Magerun2 

Télécharger le script shell

Vous pouvez télécharger le script de sauvegarde Magento2 à partir d'ici. Alternativement, utilisez la commande ci-dessous pour télécharger le script à l'aide de la commande wget.

wget https: // tecadmin.net / wp-contenu / téléchargements / scripts / magento2-backup.shot 

Vous pouvez également copier le script ci-dessous et le coller dans un fichier sur votre machine.

#!/ bin / bash ############################################### ############################################ ## ## ## ## ## ## ## ## Magento 2 Base de données et base de code Magento 2 Script de sauvegarde ## Écrit par: Rahul Kumar ## Écrit le: 06 mars 2020 ## Dernière mise à jour: 11 mars 2020 ## ################### #################################################### ################# ################# Modifier les valeurs ci-dessous ############ ################################### magento_document_root = "/ var / www / magento2" backup_path = "/ var / www / magento2 / var / backups "backup_retain_days = 30 # nombre de jours pour conserver une copie de sauvegarde locale gzip =" / bin / gzip "rm =" / bin / rm "mkdir =" / bin / mkdir "n98_magerun2 =" / usr / local / bin / n98-Magerun2 "######################################### ######################################################### ############## Ne modifie pas les valeurs ci-dessous ############## Path Export Path = / bin: / usr / bin: / usr / local / bin aujourd'hui = "$ (date" +% y-% m-% d-% h-% M ")" current_backup_dir = "$ backup_path / $ aujourd'hui" ############################### #################################################### ##### ################## Les fonctions ########################## ##### exit_on_error () echo -e "[e-mail protégé]" Exit 99 maintenance_mode () $ n98_magerun2 sys: maintenance $ 1 --skip-root-check --root-diir = $ Magento_document_root check_cmds () [ ! -x $ gzip] && exit_on_error "nom de fichier $ gzip n'existe pas. Assurez-vous que le chemin correct est défini dans la section config."[ ! -x $ rm] && exit_on_error "Le nom de fichier $ rm n'existe pas. Assurez-vous que le chemin correct est défini dans la section config."[ ! -x $ mkdir] && exit_on_error "nom de fichier $ mkdir n'existe pas. Assurez-vous que le chemin correct est défini la section Config."[ ! -x $ n98_magerun2] && exit_on_error "nom de fichier $ n98_magerun2 n'existe pas. \ ndownload script à partir de fichiers https: //.magen.net / et assurez-vous que le chemin correct est défini dans la section config." create_backup_dir () [ ! -d $ current_backup_dir] && $ mkdir -p $ current_backup_dir database_backup () $ n98_magerun2 --skip-root-check --root-dir = $ magento_document_root db: daim $ actuel_brac / base de données - $ aujourd'hui.SQL si [$? -Eq 0]; puis écho "sauvegarde de la base de données terminée avec succès" else maintenance_mode --off ##### désactiver la maintenance de la base de données même la sauvegarde de la base de données a échoué exit_on_error ". "fi codebase_backup () cd $ magento_document_root && \ tar -cpzf $ current_backup_dir / codebase - $ aujourd'hui.le goudron.gz --exclude = var / * . Si [$? -Eq 0]; puis écho "La sauvegarde de la base de code a terminé avec succès" else Maintenance_Mode --Off ##### Désactiver la maintenance de la base de code de la base de code a échoué exit_on_error ". "fi cleanup_old_backup () dis do dans_dir_name =" date "+% y-% m-% d-% h-% m" --date = "$ backup_retain_days il y a des jours" "if [ ! -z $ backup_path]; alors cd $ backup_path si [ ! -z $ disposy_dir_name] && [-d $ disove_dir_name]; puis rm -rf $ disover_dir_name fi fi ###################################### ################################################## # # ################## MAIN (fonctions d'appel) #################### Check_CMD CodeBase_Backup Maintenance_Mode --Off Cleanup_old_backup ########################################### ######################################################### ############## Le script se termine ici ################## ############### #################################################### ########################## 

Planifier la sauvegarde SCRPT

Planifiez ce script en utilisant Crontab sur votre système pour s'exécuter quotidiennement. Utilisez la commande ci-dessous pour modifier la configuration de Crontab:

crontab -e 

Et ajouter en dessous de l'entrée à la fin du fichier.

0 0 * * * sh Magento2-Backup.shot 

Enregistrer le fichier et fermer. Vous avez programmé avec succès Cronjob pour fonctionner quotidiennement. Pour en savoir plus sur l'utilisation du Cronjob, lisez ce tutoriel.