Skip to content

Sauvegarder et restaurer MedShakeEHR

This content is not available in your language yet.

Utilisez votre logiciel de sauvegarde préféré pour sauvegarder régulièrement les fichiers. Si vous avez un trou de mémoire de la localisation des fichiers, vous pouvez retrouver l’information dans Configuration > Paramètres globaux > webDirectory, sauvegardez à partir du dossier avant public_html. Exemple simple avec rsync pour une installation contenu dans /opt/ehr :

Fenêtre de terminal
rsync -av /opt/ehr /dossierdebackup

Vous pouvez planifier des sauvegardes automatiques à intervalles réguliers.

  • Rendez-vous dans Configurations > Tâches planifiées.
  • Cochez soit baseBackup, soit baseGzipBackup (fait la même chose que baseBackup mais compresse la sauvegarde.). L’exemple déjà rempli fait une sauvegarde tous les jours de la semaine. Pour une sauvegarde uniquement le lundi à 20:30 il faudra remplir dans l’ordre : * * * * 1. Pour le premier jour du mois, ça sera : * * * 1 *.

Menu tâches cron

Vous pouvez vérifier la bonne exécution du cron en vous rendant sur Journaux et informations techniques > listes des backups SQL.

Menu vérification sauvegarde

  • Rendez-vous dans Journaux et informations techniques > Installer Adminer pour accéder à la base SQL.
  • Un encart rouge apparait, appuyez sur login.
  • Sur l’interface d’Adminer allez dans Exporter, en sortie, sélectionnez enregistrer, vous pouvez laisser le reste par défaut.
  • Une fois finit, désactivez le script.
  • Ouvrez un terminal et tapez la commande suivante : mysqldump --databases medshakeehr -u=votreutilisateur -p > medshakeehr-dump.sql, en remplaçant avec vos informations.
  • Tapez le mot de passe de la base de données pour finaliser l’export.

Ouvrez un terminal et tapez la commande suivante en remplaçant avec vos informations :

Fenêtre de terminal
mysql -u root -p
CREATE DATABASE medshakeehr;
exit
mysql -u votreutilisateur -p medshakeehr < medshakeehr-dump.sql

Sauvegardes plus lourdes, que vous pouvez faire par exemple lors d’un changement de serveur. Installez mariadb-backup : sudo apt install mariadb-backup Créez l’utilisateur mariadb-backup avec les bons droits, pensez à personnaliser vos mots de passe :

Fenêtre de terminal
mysql -uroot -pmotdepasseroot
CREATE USER 'mariadb-backup'@'localhost' IDENTIFIED BY 'mypassword';
GRANT RELOAD, PROCESS, LOCK TABLES, BINLOG MONITOR ON *.* TO 'mariadb-backup'@'localhost';

Lancez la sauvegarde :

Fenêtre de terminal
mariadb-backup --backup \
--target-dir=/var/mariadb/backup/ \
--user=mariadb-backup --password=mypassword

Le dossier d’arrivée doit être vide.

Lancez la préparation du dossier de backup :

Fenêtre de terminal
sudo mariadb-backup --prepare \
--target-dir=/var/mariadb/backup/

La préparation est version dépendante donc si la version de mariadb est supérieure sur le nouveau serveur, exécutez la préparation dessus.

Une fois préparé, vous pouvez transférer le contenu de la nouvelle installation directement via Rsync par exemple ou toujours avec mariadb-backup. Mariadb doit être stoppé le temps de l’opération et /var/lib/mysql doit être vide. Il faut ensuite réattribuer les bons droits au dossier.

Fenêtre de terminal
sudo systemctl stop mariadb.service
# rsync direct possible
sudo mariadb-backup --copy-back \
--target-dir=/var/mariadb/backup/
chown -R mysql:mysql /var/lib/mysql/
sudo systemctl start mariadb.service