Bonjour,
Aujourd'hui je vous propose une solution simple pour sauvegarder une base SQL d'un site hébergé sur le NAS.
Fonctionnel sur DSM 6.2.3 avec MariaDB10.
Pour mon exemple, j'ai créé un dossier Save_MariaDB sur mon DD Ext présent sur mon NAS :
Un clique droit, propriété me donne le chemin absolu : /volumeUSB2/usbshare/Save_MariaDB
Ensuite dans Panneau de configuration > Tache planifié je créé une nouvelle tâche planifié, en sélectionnant "Script défini par l'utilisateur"
Je vais nommer la tâche SaveDB_DDExt, elle doit s’exécuter en root.
Dans l'onglet suivant, je la programme tous les jours a 00h01 !
Puis dans Paramètres de la tâches, j'entre mon script :
Ici, il faudra modifier, user, pass, et dbname. Votre base se trouvant sur le NAS, host reste égal a localhost.
On peut si on le souhaite, envoyé un mail pour informer du bon déroulement ( ou pas ) de notre sauvegarde.
Et on valide !
On exécute une première fois, en le sélectionnant et en appuyant sur Executer
Ici j'ai fait un essai avec ma base de donnée "nextcloud_", elle est maintenant dans le dossier Save_MariaDB
Sous le nom "2020-06-07-nexcloud_.sql"
Note : La derniere ligne du code sert a supprimer automatiquement TOUS les fichiers .SQL de plus de 15 jours. Dans le dossier cité. ( attention donc ! )
Si vous souhaitez l'utiliser, vous devez dé-commenter la ligne en enlevant le # en début de ligne. Vous pouvez modifier le chiffre 15 afin de changer le temps de conservations de vos sauvegardes.
Aujourd'hui je vous propose une solution simple pour sauvegarder une base SQL d'un site hébergé sur le NAS.
Fonctionnel sur DSM 6.2.3 avec MariaDB10.
Pour mon exemple, j'ai créé un dossier Save_MariaDB sur mon DD Ext présent sur mon NAS :

Un clique droit, propriété me donne le chemin absolu : /volumeUSB2/usbshare/Save_MariaDB
Ensuite dans Panneau de configuration > Tache planifié je créé une nouvelle tâche planifié, en sélectionnant "Script défini par l'utilisateur"

Je vais nommer la tâche SaveDB_DDExt, elle doit s’exécuter en root.

Dans l'onglet suivant, je la programme tous les jours a 00h01 !

Puis dans Paramètres de la tâches, j'entre mon script :
Code:
#!/bin/bash
backup_path="/volumeUSB2/usbshare/Save_MariaDB/"
date=$(date +"%Y-%m-%d")
user="mon_user"
pass="mon_pass"
host="localhost"
dbname="nom_base_a_sauvegarder"
/usr/local/mariadb10/bin/mysqldump --user=$user --password=$pass --host=$host $dbname > $backup_path/$date-$dbname.sql
#find $backup_path/* -name '*.sql' -mtime +15 -exec rm {} \;
Ici, il faudra modifier, user, pass, et dbname. Votre base se trouvant sur le NAS, host reste égal a localhost.
On peut si on le souhaite, envoyé un mail pour informer du bon déroulement ( ou pas ) de notre sauvegarde.
Et on valide !
On exécute une première fois, en le sélectionnant et en appuyant sur Executer
Ici j'ai fait un essai avec ma base de donnée "nextcloud_", elle est maintenant dans le dossier Save_MariaDB
Sous le nom "2020-06-07-nexcloud_.sql"

Note : La derniere ligne du code sert a supprimer automatiquement TOUS les fichiers .SQL de plus de 15 jours. Dans le dossier cité. ( attention donc ! )
Si vous souhaitez l'utiliser, vous devez dé-commenter la ligne en enlevant le # en début de ligne. Vous pouvez modifier le chiffre 15 afin de changer le temps de conservations de vos sauvegardes.
Code:
find $backup_path/* -name '*.sql' -mtime +15 -exec rm {} \;