sosofi
Messages postés14Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention12 juillet 2005
-
11 juil. 2005 à 14:45
rudolph974 -
8 déc. 2005 à 07:58
Bonjour,
Je suis actuellement en train de faire un site intranet, mais j'ai un petit problème!
Je travaille actuellement sur un serveur local. Une fois que j'ai fais des modifs au niveau de la BD, il faut que je l'envoi par mail à une personne connectée sur un autre serveur local auquel je n'ai pas accès. Il faut donc que par un simple bouton je puisse exporter la BD sans passer par PhpMyAdmin (et également importer la BD envoyée)!
Le plus simple aurait été d'avoir un serveur commun, ou un site intranet, mais ce n'est pas possible!
J'utilise EasyPhp pour faire tourner mon site!
Voilà je ne sais pas si c'est très clair, mais bon!?
Le problème est que je ne vois pas trop comment faire sans passer par PhpMyAdmin!
donc si vous pouviez m'aider!!
malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 200917 11 juil. 2005 à 15:02
Hello,
tu execute via exec 'mysqldump' et ensuite tu recuperes le fichier et tu l'envoies par email par exemple! Et voila, en un script tu mail l'export de ta bd a ton collegue.
username est le nom d'utilisateur (ne pas oublier le -u), dbname le nom
de la base que tu veux sauver et passwd (ne pas oublier le -p) est le
mot de passe pour mysql. Oublie pas qu'il faut pouvoir ecrire, donc
etre dans un dossier avec un chmod en conséquence (je sais jamais
lequel, je mets toujours 777, oops!)
Ca marche sans problème, à toi de dégrossir le code
mais déjà ça ne marche pas!il créé bien le fichier db.sql mais il est vide!
déjà hier, le fichier était bien créé mais vide!
Tu vois quel peut etre le problème??moi pas du tout!je me suis pris la tête hier avec!
sur mon ordi je n'ai pas les droits administrateurs, mais pour PhpMyAdmin je suis pas sûre que ca change grand chose?!
Je vais continuer à chercher!Si tu vois me problème dis moi!
merci beaucoup
a+
sofi
malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 200917 12 juil. 2005 à 09:46
pis le mot de passe, t'en as pas pour acceder a ta db? passthru('mysqldump -u root ao_champagne -ptrucchose > .././db.sql'); ... c'est pas une question d'etre admin ou pas... sinon essaie d'abord en console (putty par exple) de faire 'mysqldump -u root ao_champagne -ptrucchose > .././db.sql'. Si la ca marche pas c'est qu'il y a un probleme ;)
sosofi
Messages postés14Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention12 juillet 2005 12 juil. 2005 à 09:54
ben non j'ai pas de mot de passe pour accéder à ma base!
je suis dans une boîte de BTP, donc il n'y a que moi qui touche à l'info!
j'ai essayé de mettre ca sur mon site perso sous free, ou la il y a un mot de passe, mais ca ne marche pas non plus!la il ne créé meme pas de fichier db.sql!
je vais essayer de rajouter un mot de passe à ma base en local, ca va peut etre marcher!
je te tiens au courant!
a+
malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 200917 12 juil. 2005 à 10:40
Franchement, en fouillant un peu google, tu trouves ca:
<DT>
$cfg['Export'] array : In this array are defined default parameters for export, names of items are similar to texts seen on export page, so you can easily identify what they mean.
Et a priori ce que tu me montres la c'est la configuration par defaut dans phpmyadmin... Ceci dit, je persiste et signe avec ma question: t'as essayé en console?</DT>
sosofi
Messages postés14Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention12 juillet 2005 12 juil. 2005 à 11:16
Excuse moi j'ai un peu de mal (voire bcp), mais qu'est ce que tu appelles en console?
Avec PhpMyAdmin, quand j'exporte ca marche bien je le fais tous les jours pour avoir une sauvegarde de ma base, mais je pense pas que ce soit ca dont tu parles ??
malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 200917 12 juil. 2005 à 11:28
Effectivement, c'est pas de ca dont je parle
Soit. essaie ca: tu crees un dossier ou ca te fait plaisir avec comme droits 703, tu y mets un fichier truc.php avec comme contenu
<?php passthru('mysqldump -u root ao_champagne > db.sql'); ?> et tu executes ce fichier. Ensuite tu regardes dans ton dossier (apres un petit refresh) si le fichier db.sql a ete cree.
Je me rends compte maintenant qu'il y avait une erreur potentielle dans ta commande 'mysqldump -u root ao_champagne > .././db.sql': si .././ n'est pas au moins en chmod 703, ca ne peut pas marcher.
Ensuite, ce que j'appelle en console, c'est par exemple avec un soft comme putty, en ligne de commande quoi, pas dans un navigateur.
sosofi
Messages postés14Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention12 juillet 2005 12 juil. 2005 à 11:52
Le truc c'est que je suis sous Windows et pas sous Unix!tu fais comment pour mettre les droits à 703?
Mais a priori en fait j'ai le contrôle total sur ce répertoire et tout ce qu'il contient!
Donc j'ai réessayé de que tu a dit, et ca me créé bien le fichier mais attention....il est vide!??
malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 200917 12 juil. 2005 à 12:01
Moi je suis sous windows aussi, mais pour bidouiller mes fichiers, j'utilise Filezilla... un tour sur google avec comme recherches chmod et windows devrait t'aider ;o)
Ceci dit, si cela cree un fichier, c'est que tu as les droits. Maintenant, pourquoi il est vide, c'est une autre question! Peut etre qu'en mettant -uroot a la place de -u root... faut regarder sur google! la, je sais plus moi :o) Il semblerait qu'un fichier est vide apres mysqldump si il y a une erreur dans la commande mysqldump. C'est la qu'il faut checker selon moi.
malik7934
Messages postés1154Date d'inscriptionmardi 9 septembre 2003StatutMembreDernière intervention15 août 200917 12 juil. 2005 à 12:56
mysqldump n'est pas une commande php mais mysql... tu commences a melanger, hehe...
passthru te permet justement d'executer cette commande comme si tu etais en console. Pour te donner un exemple, bien que man ne soit pas reconnu par php, <?php passthru('man mysqldump'); ?> te donnera le help de mysqldump (non formate) et l'affichera dans ton navigateur.
Ton probleme est dans ta commande mysqldump. Si le fichier cree est vide, c'est qu'il y a une faute dans 'mysqldump -uroot ao_champagne > db.sql'. Peut etre cette histoire de password... ou alors ton serveur est sous windows (brr, ca me fait froid dans le dos rien qu'en y pensant) et peut etre, je dis bien peut etre, mysqldump ne s'utilise pas de la meme maniere... je sais plus la, desole!
sosofi
Messages postés14Date d'inscriptionmardi 3 mai 2005StatutMembreDernière intervention12 juillet 2005 12 juil. 2005 à 14:00
Bon, encore une question bête mais qui vas me permettre d'apprendre quelque chose : en quoi le fait que le serveur soit sous Window serait brr??
Explique moi que je me cultive!