1 Dernière modification par Nardo26 (20-07-2011 21:07:36)

Sujet : [Résolu] Problème avec mysqldum...

Bonjour,

J'essaye de rajouter dans la partie admin de mon site, un bouton qui me permet de faire un backup de ma base. Pour cela j'utilise ce bout de code :

$backup=$pdo_dbname."-backup_".date("Y-m-d").".sql.gz";
$command="mysqldump -h$pdo_host -u$pdo_user -p$pdo_psw --opt $pdo_dbname|gzip -c -v > $backup";
system($command,$result);

si je supprime |gzip, cela fonctionne très bien :
dans le fichier créé, je retrouve tout le contenu de ma base (33Ko). Je sais c'est peu mais ce n'est qu'un test pour l'instant... wink

par contre si je mets |gzip, j'obtiens un fichier de 10Ko qui à première vue est cohérent, mais lorsque je le décompresse, je me rend compte que dans chaque table de ma base, je ne retrouve que le 1er enregistrement et pas les autres....

Quelqu'un a déjà rencontré ce problème ?

Oups ! désolé je viens de me rendre compte que je n'ai pas posté dans la bonne rubrique... neutral

Re: [Résolu] Problème avec mysqldum...

bonjour,
ton script à l'air bon à première vue, as tu essayé de faire la même chose via le phpmyadmin pour voir?

J'ai pas testé sur lescigales.org, mais voilà un script qui fonctionne sur un de mes servers, Toad corrigera si besoin

<?PHP
error_reporting(E_ALL); // Activer le rapport d'erreurs PHP

$db_charset = "latin1"; /* mettre utf8 ou latin1 */

$db_server = "xxxxxx"; // Nom du serveur MySQL. ex. mysql5-26.perso
$db_name = "xxxxxx"; // Nom de la base de données. ex. mabase
$db_username = "xxxxxx"; // Nom de la base de données. ex. mabase
$db_password = "xxxxxx"; // Mot d epasse de la base de données.

$cmd_mysql = "mysqldump";

$archive_GZIP = "sauve_base_format_gzip.gz";

echo " Sauvegarde de la base <font color=red><b>$db_name</b></font> par <b>mysqldump</b> dans le fichier <b>$archive_GZIP</b> <br> \n";
$commande = $cmd_mysql." --host=$db_server --user=$db_username --password=$db_password -C -Q -e --default-character-set=$db_charset $db_name | gzip -c > $archive_GZIP ";
$CR_exec = system($commande);
?>

3

Re: [Résolu] Problème avec mysqldum...

J'avais commencé à écrire une réponse mais elle ne répondait pas du tout au problème, désolé, aucune idée de mon côté.
Idées pour peut être contourner le problème: utiliser bzip2, ne pas utiliser gzip en stream, je ne sais pas honnêtement.

lesCigales.ORG sysadm1n
L'hébergeur qui sent bon la lavande - Un control panel qu'il est chouette - Viendez nous parler!
"All that is necessary for evil to triumph is for good men to do nothing."

4 Dernière modification par Nardo26 (20-07-2011 21:07:53)

Re: [Résolu] Problème avec mysqldum...

YESSSSssss ! big_smile

Ca marche Toad, avec bz2... c'est l'essentiel pour moi ! wink

@infobarquee :
A partir de phpMyAdmin, gzip fonctionne... c'est vraiment bizarre ce truc ! wink
Je préfère utiliser mysqldump car j'ai entendu dire qu'il était beaucoup plus sécure notamment au niveau des verrouillages...

cf la discussion qu'il y a eu sur ce sujet :
http://www.siteduzero.com/forum-83-6659 … n-sql.html

Merci encore à tous les deux de m'avoir aider à résoudre ce problème !
big_smile