execution sous python de mysqldump
Bonjour à tous et bonne année
Je reviens vers vous pour un petit problème.
J' utilise python 2.7 mysql5.5 sous windowsxp
J'ai besoin de faire un backup de ma base de données
J'ai testé la fonction mysqldump en ligne de commande et elle fonctionne
mysqldump -u root --password=Monpass mabase --result-file=C:\svg2016-05-01.sql
cela fonctionne très bien
mais en python j'utilise subprocess
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
file1 = "svg"+str(date)+'.sql'
path = 'C:\\' + file1 #j'ai simplifié et ressemblé
#cas1
d= 'mysqldump -u root --password=xxxx mabase --result-file=%s' %path
print 'd = ', d
d = mysqldump -u root --password=xxxx mabase --result-file=C:\svg2016-01-06.sql
#cas2
arg = ['mysqldump', '-u', 'root', '--password=xxxx', 'mabase', '--result-file=' +path]
print 'arg = ', arg
arg = ['mysqldump', '-u', 'root', '--password=xxxx', 'mabase', '--result-file=C:\\svg2016-01-06.sql']
dans le premier cas
p=subprocess.call(d, shell=True)
le deuxième
p=subprocess.call(arg) |
dans les deux cas cela ne marche pas
pour le premier rien du tout pas de message d'erreur et le fichier de sauvegarde ne se crée pas
pour le deuxième j'ai: WindowsError: [Error 2] Le fichier spécifié est introuvable
Je pense à un problème de \ ou \\ et le chemin de la sauvegarde n'est pas compris
Quelqu'un pourrait il me dire ou je me plante
Merci d'avance et bonne journée