Sauvegarde sql et dossiers

Soyez le premier à donner votre avis sur cette source.

Vue 9 364 fois - Téléchargée 1 051 fois

Description

Cette source me permet de faire en quelques secondes une sauvegarde de mes bases SQL et des dossiers de mon serveur distant. Elle pourra peut-être servir à quelqu'un d'autre.
Elle utilise les commandes système tar, gzip et mysqldump, donc attention à la compatibilité de votre hébergeur.

Source / Exemple :


Voir ZIP

Conclusion :


Il ne s'agit que d'un petit script mais qui m'est bien utile. On pourrait développer un peu plus l'aspect gestion d'erreurs.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
11
Date d'inscription
dimanche 3 octobre 2004
Statut
Membre
Dernière intervention
10 mai 2008

SALUT JE SUIS SUR
http://127.0.0.1/backup/backupdir.php
JE CONFIRME ET RIEN CE PASSE
DANS CONFIG
$host[1]='';
$user[1]='';
$pwd[1]='';
$base[1]='';
$description[1]='';
J AI ENCORE rien mis ca dois venir ca je pense
la il faut mettre les parmetre ftp ou les mots de passe mysql?
Sinon j ai recuperer le dossier que j ai appeler ./../backup et je l ai mis dans le www en local pour moi je cherche a sauvegarder un dossier complet ./../CLIENTS sur mon bureau est ce la bonne source dois ton la motifié,merci de votre reponse
Messages postés
8
Date d'inscription
dimanche 5 novembre 2006
Statut
Membre
Dernière intervention
9 mars 2008

OK compris ;p
Messages postés
592
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
4 décembre 2008

Bah tu pourrais remplacer
"mysqldump --host=$host --user=$user --password=$pwd $base | gzip > $filename"
par 'mysqldump --host='.$host.' --user='.$user.' --password='.$pwd.' '.$base.' | gzip > '.$filename'

MAIS ceci dit je suis d'accord que les " " dans ce cas ci sont beaucoup plus pratiques, ils sont là pour ça après tout :) Ma remarque concernait surtout les simples strings qui n'ont pas besoin d'être parsés notamment dans le fichier de config , bref je crois que tu as bien compris où je voulais en venir :)
Messages postés
8
Date d'inscription
dimanche 5 novembre 2006
Statut
Membre
Dernière intervention
9 mars 2008

Code modifié, merci yoman64 ;-)
Pour ce qui est de l'utilisation des ' à la place des ", je n'ai pas pu le faire pour tout (notamment pour les appels à system()).
Messages postés
592
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
4 décembre 2008

Salut,
J'ai jetté un rapide coup d'oeil à ton code et j'ai quelques commentaires.

Tout d'abord tu n'échappe pas les données passé à mysqldump, si mon mot de passe contient des chars spéciaux tel que | ou ; ou " ton script va lamentablement échouer; renseigne toi sur la commande escapeshellarg. Ensuite dans config.php $base_number=3; est totalement inutile, renseigne toi sur la commande count.

Dernièrement tu devrais passer la sortie de mysqldump à gzip au lieu de le piper dans un fichier, ça éviterais des IO inutiles.
Dernièrement extract est très dangereux, surtout de la façon que tu l'utilise, et tu peux très bien t'en passer :)

Et pour finir préfère l'utilisation des ' plutot que des " .

Bonne chance :)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.