Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WD + mySQL] mysqldump + lanceappli

11 réponses
Avatar
Olivier POUZIN
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir de WD ??

Mon code :

_exec est une chaine="g:\wamp\mysql\bin\mysqldump.exe mabase > test.sql"
SI pas LanceAppli(_exec, exeActif, Vrai) ALORS
Erreur(ErreurInfo())
FIN

Je dois louper un truc, quelqu'un pourra t-il éclairer ma lanterne ?!

Merci d'avance

10 réponses

1 2
Avatar
Daniel
Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir de WD ??

Mon code :

_exec est une chaine="g:wampmysqlbinmysqldump.exe mabase > test.sql"
SI pas LanceAppli(_exec, exeActif, Vrai) ALORS
Erreur(ErreurInfo())
FIN

Je dois louper un truc, quelqu'un pourra t-il éclairer ma lanterne ?!

Merci d'avance



La commande ci-dessous fonctionne, penser à indiquer le chemin de
mysqldump si il n'est pas dans le même répertoire que le exe de
l'application

sauv_serveur est chaine

sauv_serveur = "mysqldump -h ton_serveur -uUSER -pPASSWORD -B TA_BASE
--lock-tables=true >"+Caract(34)+sauv_client+Caract(34)

DDELance(sauv_serveur)

--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
Avatar
Daniel
Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir de WD ??

Mon code :

_exec est une chaine="g:wampmysqlbinmysqldump.exe mabase > test.sql"
SI pas LanceAppli(_exec, exeActif, Vrai) ALORS
Erreur(ErreurInfo())
FIN

Je dois louper un truc, quelqu'un pourra t-il éclairer ma lanterne ?!

Merci d'avance



La commande ci-dessous fonctionne, penser à indiquer le chemin de
mysqldump si il n'est pas dans le même répertoire que le exe de
l'application

sauv_serveur est chaine

sauv_serveur= "mysqldump -h ton_serveur -uUSER -pPASSWORD -B TA_BASE"

sauv_serveur+=" --lock-tables=true >"+Caract(34)+sauv_client+Caract(34)

DDELance(sauv_serveur)

--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
Avatar
Olivier POUZIN
Daniel a écrit :
Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir de WD ??

Mon code :

_exec est une chaine="g:wampmysqlbinmysqldump.exe mabase > test.sql"
SI pas LanceAppli(_exec, exeActif, Vrai) ALORS
Erreur(ErreurInfo())
FIN

Je dois louper un truc, quelqu'un pourra t-il éclairer ma lanterne ?!

Merci d'avance



La commande ci-dessous fonctionne, penser à indiquer le chemin de
mysqldump si il n'est pas dans le même répertoire que le exe de
l'application

sauv_serveur est chaine

sauv_serveur= "mysqldump -h ton_serveur -uUSER -pPASSWORD -B TA_BASE"

sauv_serveur+=" --lock-tables=true >"+Caract(34)+sauv_client+Caract(34)

DDELance(sauv_serveur)



Merci de ta réponse

Cela ne fonctionne pas :

la fenêtre de commande reste bloquée à "enter password : " et si on
saisi le mot de passe, le traitement se fait mais sans générer de fichier.

- le mot de passe est indiqué dans la chaine passée en param à DDElance
- je suis sur mySQL 5 (wamp) XP et WD10

Une autre suggestion ? (l'idée d'écrire la sauvegarde à la mimine m'est
particulièrement désagréable ...)
Avatar
Olivier POUZIN
Olivier POUZIN a écrit :
Daniel a écrit :
Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir de WD ??

Mon code :

_exec est une chaine="g:wampmysqlbinmysqldump.exe mabase > test.sql"
SI pas LanceAppli(_exec, exeActif, Vrai) ALORS
Erreur(ErreurInfo())
FIN

Je dois louper un truc, quelqu'un pourra t-il éclairer ma lanterne ?!

Merci d'avance



La commande ci-dessous fonctionne, penser à indiquer le chemin de
mysqldump si il n'est pas dans le même répertoire que le exe de
l'application

sauv_serveur est chaine

sauv_serveur= "mysqldump -h ton_serveur -uUSER -pPASSWORD -B TA_BASE"

sauv_serveur+=" --lock-tables=true >"+Caract(34)+sauv_client+Caract(34)

DDELance(sauv_serveur)



Merci de ta réponse

Cela ne fonctionne pas :

la fenêtre de commande reste bloquée à "enter password : " et si on
saisi le mot de passe, le traitement se fait mais sans générer de fichier.

- le mot de passe est indiqué dans la chaine passée en param à DDElance
- je suis sur mySQL 5 (wamp) XP et WD10

Une autre suggestion ? (l'idée d'écrire la sauvegarde à la mimine m'est
particulièrement désagréable ...)



Je me répond (en partie) à moi-même

avec les param suivants :

sauv_serveur= "g:wampmysqlbinmysqldump.exe -h localhost -utest ptoto
-B mnemo "
sauv_serveur+=" --lock-tables=true >
g:wampmysqlbinmysqldumptestK.sql"

J'arrive à passer le cap du mot de passe

mais toujours pas de génération d'archive !!??!!

(le fait d'indiquer explicitement le chemin du fichier à générer n'a
aucune importance, entourer le nom du fichier avec des caract(34) ou
(39) non plus :-(( )

helllpppp !
Avatar
Gégé
Sans ses moufles, Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir de
WD ??









Sûrement une histoire de droits.
Pour ma part, j'utilise tout simplement le service pycron pour
programmer ce genre de tâche.
Avatar
Olivier POUZIN
Gégé a écrit :
Sans ses moufles, Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir de
WD ??









Sûrement une histoire de droits.
Pour ma part, j'utilise tout simplement le service pycron pour
programmer ce genre de tâche.


Merci de ta réponse,

Apparemment il n'y a pas de problème de droits

le code suivant ...

sauv_serveur= "g:wampmysqlbinmysqldump.exe -h localhost -utest
-ptoto -B mabase"
sauv_serveur+=" --lock-tables=true >test.sql"

SI DDELance(sauv_serveur,DDEInactif,Faux,"g:wampmysqlbin") ALORS
//
SINON
Erreur(ErreurInfo())
FIN

... me lance bien mysqldump, la fenêtre dos s'ouvre et le dump s'exécute
,mais le fichier test.sql n'est pas généré ?????

En direct ligne de commande, tout se passe bien

Je ne comprend pas ???
Avatar
Daniel
Olivier POUZIN a écrit :
Gégé a écrit :
Sans ses moufles, Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir de
WD ??









Sûrement une histoire de droits.
Pour ma part, j'utilise tout simplement le service pycron pour
programmer ce genre de tâche.


Merci de ta réponse,

Apparemment il n'y a pas de problème de droits

le code suivant ...

sauv_serveur= "g:wampmysqlbinmysqldump.exe -h localhost -utest
-ptoto -B mabase"
sauv_serveur+=" --lock-tables=true >test.sql"

SI DDELance(sauv_serveur,DDEInactif,Faux,"g:wampmysqlbin") ALORS
//
SINON
Erreur(ErreurInfo())
FIN

... me lance bien mysqldump, la fenêtre dos s'ouvre et le dump s'exécute
,mais le fichier test.sql n'est pas généré ?????

En direct ligne de commande, tout se passe bien

Je ne comprend pas ???



Je croyais que tu avais trouvé :-(

Bon, tu fais un fichier bat dans lequel tu mets ta commande qui fonctionne.

Tu le lances à la main, pour voir si tout est ok.
Si ok tu le lances par lanceappli, normalement devrait être ok.

Maintenant, pour passer la commande avec DDELance la seule différence
que tu risque d'avoir c'est les "", donc il faut que tu les places au
bon endroit.

--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
Avatar
Olivier POUZIN
Daniel a écrit :
Olivier POUZIN a écrit :
Gégé a écrit :
Sans ses moufles, Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir
de WD ??









Sûrement une histoire de droits.
Pour ma part, j'utilise tout simplement le service pycron pour
programmer ce genre de tâche.


Merci de ta réponse,

Apparemment il n'y a pas de problème de droits

le code suivant ...

sauv_serveur= "g:wampmysqlbinmysqldump.exe -h localhost -utest
-ptoto -B mabase"
sauv_serveur+=" --lock-tables=true >test.sql"

SI DDELance(sauv_serveur,DDEInactif,Faux,"g:wampmysqlbin") ALORS
//
SINON
Erreur(ErreurInfo())
FIN

... me lance bien mysqldump, la fenêtre dos s'ouvre et le dump
s'exécute ,mais le fichier test.sql n'est pas généré ?????

En direct ligne de commande, tout se passe bien

Je ne comprend pas ???



Je croyais que tu avais trouvé :-(

Bon, tu fais un fichier bat dans lequel tu mets ta commande qui fonctionne.

Tu le lances à la main, pour voir si tout est ok.
Si ok tu le lances par lanceappli, normalement devrait être ok.

Maintenant, pour passer la commande avec DDELance la seule différence
que tu risque d'avoir c'est les "", donc il faut que tu les places au
bon endroit.




Cela fonctionne parfaitement avec un .bat :-)) (si ce n'est que comme
je dois changer de dossier de backup toutes les semaines, je suis obligé
de créer puis de supprimer le bat après chaque utilisation ...)

merci pour la suggestion :-))
Avatar
Daniel
Olivier POUZIN a écrit :
Daniel a écrit :
Olivier POUZIN a écrit :
Gégé a écrit :
Sans ses moufles, Olivier POUZIN a écrit :
Bonjour à tous,

Je cherche à lancer un dump d'une table mysql à partir de WD.

La ligne de commande suivante :

mysqldump mabase > test.sql

fonctionne sans problème mais impossible de l'exécuter à partir
de WD ??









Sûrement une histoire de droits.
Pour ma part, j'utilise tout simplement le service pycron pour
programmer ce genre de tâche.


Merci de ta réponse,

Apparemment il n'y a pas de problème de droits

le code suivant ...

sauv_serveur= "g:wampmysqlbinmysqldump.exe -h localhost -utest
-ptoto -B mabase"
sauv_serveur+=" --lock-tables=true >test.sql"

SI DDELance(sauv_serveur,DDEInactif,Faux,"g:wampmysqlbin") ALORS
//
SINON
Erreur(ErreurInfo())
FIN

... me lance bien mysqldump, la fenêtre dos s'ouvre et le dump
s'exécute ,mais le fichier test.sql n'est pas généré ?????

En direct ligne de commande, tout se passe bien

Je ne comprend pas ???



Je croyais que tu avais trouvé :-(

Bon, tu fais un fichier bat dans lequel tu mets ta commande qui
fonctionne.

Tu le lances à la main, pour voir si tout est ok.
Si ok tu le lances par lanceappli, normalement devrait être ok.

Maintenant, pour passer la commande avec DDELance la seule différence
que tu risque d'avoir c'est les "", donc il faut que tu les places au
bon endroit.




Cela fonctionne parfaitement avec un .bat :-)) (si ce n'est que comme
je dois changer de dossier de backup toutes les semaines, je suis obligé
de créer puis de supprimer le bat après chaque utilisation ...)

merci pour la suggestion :-))



Donc c'est que tu as un problème de "" dans ta chaîne.
Si le fichier bat te convient, dans ce cas tu le construis dynamiquement
dans ton programme, et tu le détruis après la sauvegarde effectuée.

Ce n'est pas super sécu, mais bon, en attendant...


--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
Avatar
jacques trepp
fichier SAUVEGARDE.INI
SAUVEGARDE]
DISQUE=H
USB=1
RACINE=Sauve
REPERTOIRE=H:
POSTGRESQL=C:Program FilesPostgreSQL8.1bin

// ------------------------------------------------

disque_sauve, rep_sauve, racine_sauve, rep_postgres sont des chaînes
usb_sauve est un booléen

disque_sauve =
Asc(INILit("SAUVEGARDE","DISQUE","C",ComplèteRep(fRepEnCours())+"Sauvegarde.ini"))-66
usb_sauve =
Val(INILit("SAUVEGARDE","USB","0",ComplèteRep(fRepEnCours())+"Sauvegarde.ini"))
racine_sauve =
INILit("SAUVEGARDE","RACINE","",ComplèteRep(fRepEnCours())+"Sauvegarde.ini")
rep_sauve =
INILit("SAUVEGARDE","REPERTOIRE","",ComplèteRep(fRepEnCours())+"Sauvegarde.ini")
rep_postgres =
INILit("SAUVEGARDE","POSTGRESQL","",ComplèteRep(fRepEnCours())+"Sauvegarde.ini")

SI usb_sauve ALORS
Résultat_usb est une chaîne
Résultat_usb = USBRecherche(USBLecteur,Caract(Val(disque_sauve)+66))
SI SansEspace(Résultat_usb) = "" ALORS
Erreur("Aucun périphérique USB n'a été détecté !")
RETOUR
FIN
FIN


nom_programme, chemin_sauve sont des chaînes
nom_programme = ComplèteRep(fCheminCourt(rep_postgres)) + "pg_dump.exe "
chemin_sauve = ComplèteRep(fCheminCourt(rep_sauve))
// -------------------------------- si postgresql, optimiser la base
option_commande est une chaîne

option_commande = " -i -h " + g_serveur_mysql ...
+ " -p " + g_numero_port ...
+ " -U " + g_user_id ...
+ " -F t -v -f " + chemin_sauve +racine_sauve+"_"+g_base_mysql+".backup
" + g_base_mysql

DDELance(nom_programme+option_commande,DDEActif,Vrai)
Info("Traitement terminé.")

un bout de code qui fonctionne bien chez moi.



--
Jacques Trepp
Albygest - 81160 - St Juery
jacques-pas de
(enlever '-pas de spam' pour me joindre)
http://www.albygest.com
1 2