Gecko64 Posté 13 Septembre 2008 Posté 13 Septembre 2008 Bonjour et oui la question du jour avec Gecko64 Voila en fait je voulais savoir comment je pourrais faire en PHP pour effectuer le backup d'une base de donnée? (Utilisation de phpmyadmin ou autre outil dans le genre m'est interdite je précise ) Si il existe une fonction en PHP qui gère tout ca? J'ai regardé sur le net mais on me propose des solutions assez bidouille ici: http://www.php-mysql-tutorial.com/perform-...-backup-php.php Je dis bidouille pcq je n'aime pas la fonction systeme(); qui peut révéler des incompatibilités pour certaines commandes si on passe d'un serveur Linux a Windows. Personnellement, je voulais savoir si il était possible de lancer un téléchargement de la base de données sans la stocker sur le disque dur du serveur? Un peu comme certains forums font pour faire le backup Edit: je vais quand même apporter une petite précision, il est possible de faire ca sans la fonction systeme() ou exec()? Je n'aime pas trop exécuter des commandes en locale ainsi en fait :-/ Enfin je vous demande pour avoir une idée de solution propre légère comme je sais qu'il y a pas mal de pro PHP ici et avec le moins de risque en matière de faille de sécu. Merci d'avance Gecko64 (Marc)
TrocWeb Posté 13 Septembre 2008 Posté 13 Septembre 2008 Bonjour, cela peut être Ici Cordialement TrocWeb
Gecko64 Posté 13 Septembre 2008 Auteur Posté 13 Septembre 2008 Merci Trocweb mais comme je dois mettre ca dans mon travail de fin d'étude, je ne peux pas utiliser un outil tout pré fait. J'ai trouvé des moyen de faire ca mais ils utilisent des fonctions système que j'essaie au minimum d'utiliser. Donc en fait je pose ma question ici surtout pour savoir si quelqu'un n'a pas une idée ou moyen de procédé pratique et sécurisé pour effectuer cela. En fait ca doit permettre a la personne pour qui je fais le site de pouvoir faire la sauvegarde de sa DB en un clic
TrocWeb Posté 13 Septembre 2008 Posté 13 Septembre 2008 (modifié) a j'avais pas percuté sur les forums phpbb il y a un module qui permet de faire ça en 1 clic je crois, tu pourrait peut être t'en inspirer Modifié 13 Septembre 2008 par TrocWeb
K-Ola Posté 13 Septembre 2008 Posté 13 Septembre 2008 Tu as un bon tuto ici , sans appel de system() , qui te génère un fichier .txt en sortie, reste à le compresser, faire télécharger le fichier et le supprimer à la fin du téléchargement.
Kioob Posté 13 Septembre 2008 Posté 13 Septembre 2008 (modifié) Délicate tâche que voila Si tu cherches un truc fiable et souple, l'idéal sera très certainement un script basé sur mysqldump... et donc de passer par system(), exec() et autres. Si tu cherches un truc rapide, je n'ai pas trouvé mieux que mylvmbackup. Mais cela nécessite encore system()/exec() etc, mais aussi les droits root et un formatage LVM... bref coté portabilité c'est pas l'idéal. Après pour du 100% PHP pour moi ce sera forcément de la bidouille, et mis a part comme projet d'étude l'intérêt me semble très très limité (d'autant plus qu'il y a déjà des solutions pour ça). Dans tous les cas je ne passerais pas par Apache pour faire ça : le dump d'une database peut être très long, et ce n'est (à mon avis) pas via Apache que tu peux gérer ce genre de chose de manière fiable. L'idéal serait alors que le script coté front déclenche un processus de dump en tache de fond, après tu joues éventuellement avec l'ajax pour afficher la progression, puis tu ne lances le téléchargement qu'une fois le dump terminé. Bon courage Modifié 13 Septembre 2008 par Kioob
Gecko64 Posté 13 Septembre 2008 Auteur Posté 13 Septembre 2008 Ok merci pour toutes ces informations Je vais m'inspirer de tout ca alors
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant