Aller au contenu

Ce tchat, hébergé sur une plateforme indépendante d'Infoclimat, est géré et modéré par une équipe autonome, sans lien avec l'Association.
Un compte séparé du site et du forum d'Infoclimat est nécessaire pour s'y connecter.

Sauvegarde hebdomadaire de la base weewx sur Raspberry


Pascal032
 Partager

Messages recommandés

Bonjour,

 

Je poste ici un script PHP qui permet une sauvegarde hebdomadaire de la base de données, zippée et envoyée vers un stockage FTP

Je l'ai appelé 'dump.php', placé dans le dossier '/home/pi/dump/'

Pour l'exécuter, il suffit de la commande 'php /home/pi/dump/dump.php'

Ou simplement ' php dump.php ' si vous êtes dans le bon dossier

Pour le cron, même si la sauvegarde est hebdomadaire, j'ai décidé de l'exécuter une fois par jour.  Cela ne mange pas trop de pain ;)

Mais vous pouvez vous contenter de l'exécuter qu'une fois par semaine !

 

Bien à vous !
 

 

<?php
	/*
		Pi (ou Linux)
		Sauvegarde hebdomadaire de la base de données weeWX
		sous format SQL, Zippée puis envoyée vers un stockage FTP
		
		Enjoy !
		
		Pascal Cambier 20/10/2021
	*/

	date_default_timezone_set( 'Europe/Brussels' );
	// Base
	$host = 'localhost';
	$username = 'user';
	$password = 'pass';
	$db1 = 'weewx';
	$db2 = '/home/pi/dump/weewx-' . date( "y-W" ) . ".sql";
	// FTP
	$ftpHost = 'ftp.c...';
	$ftpUser = 'ftpUser';
	$ftpPassword = 'ftpPass';


	// DUMP  
	system( "mysqldump --host=" . $host . " --user=" . $username . " --password=" . $password . "  " . $db1 . " > " . $db2 );

	// ZIP
	// création de l'archive
	$zip = new ZipArchive();
	$filename = '/home/pi/dump/weewx-' . date( "y-W" ) . ".zip";

	if ( $zip->open( $filename, ZipArchive::CREATE ) !== TRUE ) {
	  exit( "cannot open <$filename>\n" );
	}
	$zip->addFile( $db2 );
	$zip->close();


	// FTP transfer

	$fp = fopen( $filename, 'r' );
	$db1 = $db1 . date( "y-W" ) . ".zip";

	$conn_id = ftp_connect( $ftpHost )or die( "could not connect to " . $ftpHost );
	if ( !@ftp_login( $conn_id, $ftpUser, $ftpPassword ) ) {
	  die( "could not connect to " . $ftpHost . "invalid username and/or password" );
	}

	if ( ftp_fput( $conn_id, $db1, $fp, FTP_ASCII ) ) {
	  echo "Update successfull !\n";
	} else {
	  echo "Error while uploading file...\n";
	}
	ftp_close( $conn_id );

	// supprime le fichier sql
	unlink($db2);
?>

 

  • Merci 2
Lien à poster
Partager sur d’autres sites

Super @Pascal032 très bonne initiative 

Il en faudrait d autre comme cela, je pense entre autre au contrôle climatologie mensuel.

Si tu le veux tu peux aussi mettre ta solution dans le fil que j'ai consacré à weewx .

Bonne soirée 

Lien à poster
Partager sur d’autres sites

Il y a 13 heures, meteo-melin a dit :

L'idéal serait de sauvegarder le dump en RAM pour éviter d'écrire sur la carte SD. ;)

Bonjour @meteo-melin

Je pense que si on fait le dump directement en RAM et le problème et que si tu dois redémarrer ton raspberry tu perds le fichier. 

Bonne réception 

Lien à poster
Partager sur d’autres sites

Il y a 11 heures, meteo-melin a dit :

Bah comme le dump est envoyé par FTP à la fin, cela ne sert à rien de le garder sur le disque d'où mon idée d'écrire en RAM.

Ah ok vu comme cela bien évidemment. Je faisais la précision pour les personnes ne maîtrisant pas les lignes de commandes. Donc je suis d accord sur le principe on peut écrire directement en RAM si par ailleur le fichier est copié et récupérable d une autre source en parallèle et comme tu l'indiquait cela ne sert à rien de surcharger la carte.

Bonne réception

Lien à poster
Partager sur d’autres sites

Il y a 2 heures, kekess a dit :

Salut

 

Merci pour ce partage. Question : comment faire pour transférer la BD sur le serveur FTP sans un dossier spécifique ?

 

Merci 

Bonjour @kekess

Je ne comprend pas bien ta question.

Je suppose que tu ne veux pas spécifier un dossier en particulier, si c est le cas ton fichier va se mettre automatiquement à la Racine de ton ftp. Cette solution n est pas très propre, mieux vaut spécifier un chemin est un répertoire mais c est faisable.

Bonne réception 

Lien à poster
Partager sur d’autres sites

  • 1 month later...

Bonjour

Je me permet de relancer ce topic car j'ai quelque petits soucis.

Jusqu'ici je faisais la sauvegarde en local et cela fonctionnais très bien.

Voila maintenant je souhaiterais sauvegarder sur un Nas mais je n'arrive pas à faire le paramètrage d'accès cela ne fonctionne pas.

Comme je ne suis pas fort en codage python je cherche un peu de support pour le faire.

Merci

  • J'aime 1
Lien à poster
Partager sur d’autres sites

  • Responsable Technique
il y a une heure, BMGB-59 a dit :

Bonjour

Je me permet de relancer ce topic car j'ai quelque petits soucis.

Jusqu'ici je faisais la sauvegarde en local et cela fonctionnais très bien.

Voila maintenant je souhaiterais sauvegarder sur un Nas mais je n'arrive pas à faire le paramètrage d'accès cela ne fonctionne pas.

Comme je ne suis pas fort en codage python je cherche un peu de support pour le faire.

Merci

@Drealine va pouvoir t'aider 😁

Lien à poster
Partager sur d’autres sites

Le simple, je pense, est de monter le dossier partagé de ton NAS comme un lecteur réseau sur ton Raspberry. Généralement, quand on fait cela, on se retrouve avec un dossier dans le répertoire /mnt

Ensuite, tous les programmes peuvent accéder au mount (selon les autorisations données sur le repertoire).

 

Pour monter l'électeur réseau, tu peux regarder la https://markontech.com/linux/mount-a-network-shared-drive-on-linux/

Lien à poster
Partager sur d’autres sites

il y a 3 minutes, meteo-melin a dit :

Le simple, je pense, est de monter le dossier partagé de ton NAS comme un lecteur réseau sur ton Raspberry. Généralement, quand on fait cela, on se retrouve avec un dossier dans le répertoire /mnt

Ensuite, tous les programmes peuvent accéder au mount (selon les autorisations données sur le repertoire).

 

Pour monter l'électeur réseau, tu peux regarder la https://markontech.com/linux/mount-a-network-shared-drive-on-linux/

Bonsoir @meteo-melin

oui j'ai bien un dossier partagé ; donc si je te suis je dois juste le monter.

J'essaierais demain.

Je cherchais plus compliqué je pensais ëtre obligé de faire une connexion.

Merci et bonne soirée

Lien à poster
Partager sur d’autres sites

Bonjour,

Je découvre avec stupéfaction tous les posts concernant mon script...  Merci, @BMGB-59, de m'avoir envoyé un message !

J'avais essayé dans le temps de monter un NAS avec Samba, mais il n'était pas stable.  J'ai réessayé sur un PI 4, et cela fonctionne nickel, déjà rien que pour le montage qui se fait tout seul, à moins que ce soit une évolution positive de l'OS

Je me suis fait un petit aide-mémoire, mais il faudrait que je le rende "universel".  Si cela t'intéresse, dis-le moi.

 

Autre chose :

Le 24/10/2021 à 20:21, meteo-melin a dit :

L'idéal serait de sauvegarder le dump en RAM pour éviter d'écrire sur la carte SD. ;)

Excellente idée @meteo-melin, je ne savais pas que c'était possible.  Comment faire ?

Modifié par Pascal032
ajout d'une information
Lien à poster
Partager sur d’autres sites

Le 12/12/2021 à 23:44, BMGB-59 a dit :

Jusqu'ici je faisais la sauvegarde en local et cela fonctionnais très bien.

C'est un peu contre l'objectif d'un backup : on le fait ailleurs en cas de défaillance du support de l'original.  Pour ma part j'ai choisit mon espace largement suffisant sur le serveur Web.  Et puis rien ne m'empêche d'y passer faire du nettoyage de temps en temps...

Lien à poster
Partager sur d’autres sites

il y a une heure, Pascal032 a dit :

Bonjour,

Je découvre avec stupéfaction tous les posts concernant mon script...  Merci, @BMGB-59, de m'avoir envoyé un message !

J'avais essayé dans le temps de monter un NAS avec Samba, mais il n'était pas stable.  J'ai réessayé sur un PI 4, et cela fonctionne nickel, déjà rien que pour le montage qui se fait tout seul, à moins que ce soit une évolution positive de l'OS

Je me suis fait un petit aide-mémoire, mais il faudrait que je le rende "universel".  Si cela t'intéresse, dis-le moi.

 

Autre chose :

Excellente idée @meteo-melin, je ne savais pas que c'était possible.  Comment faire ?

 

il y a 53 minutes, Pascal032 a dit :

C'est un peu contre l'objectif d'un backup : on le fait ailleurs en cas de défaillance du support de l'original.  Pour ma part j'ai choisit mon espace largement suffisant sur le serveur Web.  Et puis rien ne m'empêche d'y passer faire du nettoyage de temps en temps...

Bobjour @Pascal032

Et oui quand on lance un sujet il faut le suivre 🤭

Pour la question oui je suis preneur et ne pense pas être le seul pour la version universel j'ai hâte.

Pour ce qui est du backup je suis d'accord avec toi mais je n'ai plus de site c'est un choix donc plus de ftp, je me suis donc rabatue en attendant sur une clé usb et maintenant ayant un nas je souhaite pouvoir transférer dessus mais n'y arrive pas.

Bonne journée

Lien à poster
Partager sur d’autres sites

  • Responsable Technique

Moi qu'à lancé un update hier concernant apache et bien sûr c'est le rasp avec weewx qu'à chrash 😢.. En plus suis pas chez moi, alors le backup de la bdd n'a pas été envoyé.. La tristesse 😶... 

 

Je vais quand essayer de recup au moins la bdd.. 

 

 

Lien à poster
Partager sur d’autres sites

il y a 42 minutes, 970hPa a dit :

Moi qu'à lancé un update hier concernant apache et bien sûr c'est le rasp avec weewx qu'à chrash 😢.. En plus suis pas chez moi, alors le backup de la bdd n'a pas été envoyé.. La tristesse 😶... 

 

Je vais quand essayer de recup au moins la bdd.. 

 

 

Bonjour @970hPa

J'ai beau le dire et le répéter pas de mise à jour !😴 à moins d'un bug ou d'un soucis de fonctionnement à corriger.

Qui va aller attaquer ton serveur rasp chez toi qui normalement si tu as suivi ma procédure à changer de MdP et de port.

Il devra passer ta box ; ton pare feu ; connaitre ton IP interne ton MdP ! 🤢

Ces mises à jour ne concerne normalement que les serveurs accessibles au grand public directement.

Bon courage.

 

Lien à poster
Partager sur d’autres sites

  • Responsable Technique
il y a 30 minutes, BMGB-59 a dit :

Bonjour @970hPa

J'ai beau le dire et le répéter pas de mise à jour !😴 à moins d'un bug ou d'un soucis de fonctionnement à corriger.

Qui va aller attaquer ton serveur rasp chez toi qui normalement si tu as suivi ma procédure à changer de MdP et de port.

Il devra passer ta box ; ton pare feu ; connaitre ton IP interne ton MdP ! 🤢

Ces mises à jour ne concerne normalement que les serveurs accessibles au grand public directement.

Bon courage.

 

Je sais, mais par précaution je le fais 😁

En tout cas j'ai un backup sur WeatherLInk. Com 😝.. 

 

Lien à poster
Partager sur d’autres sites

Le 13/12/2021 à 01:15, 970hPa a dit :

@Drealine va pouvoir t'aider 😁

Perso j'ai un DS220+ où je m'embête plus à faire des dump sql.

Je sauvegarde le tout avec le client Active Backup for Business (bien entendu il faut a minima la version DS220+). D'ailleurs je fais mes backup de mon VPS OVH avec ça  aussi.

 

Versionning + sauvegarde horaire. Fait le taffe. Je recommande plus que jamais. 

  • J'aime 1
  • Merci 1
Lien à poster
Partager sur d’autres sites

Il y a 3 heures, Drealine a dit :

Perso j'ai un DS220+ où je m'embête plus à faire des dump sql.

Je sauvegarde le tout avec le client Active Backup for Business (bien entendu il faut a minima la version DS220+). D'ailleurs je fais mes backup de mon VPS OVH avec ça  aussi.

 

Versionning + sauvegarde horaire. Fait le taffe. Je recommande plus que jamais. 

Hello

J'ai le même genre de nas, comment on fait ça ?

Je doit dire que je ne me suis pas posé la dessus.

Tu sauvegardes quoi et comment exactement ?

Merci

Lien à poster
Partager sur d’autres sites

Il y a 5 heures, Drealine a dit :

Perso j'ai un DS220+ où je m'embête plus à faire des dump sql.

Je sauvegarde le tout avec le client Active Backup for Business (bien entendu il faut a minima la version DS220+). D'ailleurs je fais mes backup de mon VPS OVH avec ça  aussi.

 

Versionning + sauvegarde horaire. Fait le taffe. Je recommande plus que jamais. 

Je suis entrain de chercher je ne sais même pas ce que j'ai acheté ......c'est un920+ donc je dois avoir ton logiciel

Lien à poster
Partager sur d’autres sites

Il y a 14 heures, BMGB-59 a dit :

Bonjour @meteo-melin

Bon cela ne fonctionne pas.
Le nas est bien mappé mais il n'apparait pas dans le répertoire des lecteurs monté /mnt ?

une idée ?

Tu dois créer le répertoire dans lequel tu veux monter le disque reseau: mkdir /mnt/nas 

 

Il ne fait pas oublier de vérifier les autorisations nfs sur ton nas.

 

Ensuite tu montes le tout:

sudo mount ADRESSE_IP:/volume_du_nas/dossier_partage /mnt/nas
Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
 Partager

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...