2010-07-20 6 views
0

S'il vous plaît, aidez-moi, j'ai obtenu ce code de googling sur la façon d'utiliser mysql dump sur php. Mais c'est juste de générer un fichier .sql vide. J'ai déjà essayé de placer le fichier mysqldump.exe dans le même répertoire que le fichier php mais cela ne fonctionne pas.mysql dump générant un fichier sql vide

<?php 
system('mysqldump -uroot -pmypassword test > C:\wamp\www\test\test.sql'); 
?> 

Je suis en train de faire this, mais je suis sous Windows 7 et je reçois erreur d'accès refusé si je change les privilèges dans cmd.exe même si je suis l'admin.

S'il vous plaît, aidez, pourquoi génère-t-il un fichier SQL vide? Comment résoudre ce problème?

+1

Qu'est-ce que vous obtenez sans redirection? système d'impression ('mysqldump -uroot -pmypassword test'); ?> – berkes

+0

il ne fait rien, – user225269

Répondre

2

Essayez de mettre un espace entre le -u et votre nom d'utilisateur

<?php 
system('mysqldump -u root -pmypassword test > C:\wamp\www\test\test.sql'); 
?> 
1

Vous devez vérifier la valeur de retour de l'opération "système". Vous devriez vérifier votre chemin de fichier. Vous devriez vérifier la base de données existe.

Un bon moyen de vérifier tout ce qui est d'exécuter cette commande à la main, avant de l'utiliser en php.

+0

Eh oui, je l'ai essayé sur cmd, mais il sera toujours demander le mot de passe si vous le faites comme ça -p motdepasse Si je le fais comme ça, je vais me dire erreur cet accès est refusé en utilisant le mot de passe oui -pmypassword – user225269

+1

La bonne syntaxe est -pmypassword, sans espace. Peut nous donner le message d'erreur exact lorsque vous faites cela de cette façon? –

+0

il est dit: erreur 1045: accès refusé pour l'utilisateur 'root @ localhost' en utilisant le mot de passe: oui lorsque vous essayez de vous connecter – user225269

Questions connexes