FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Ejecutar .bat de un backup mysql desde c++ builder 6 ó XE
Saludos a todos
Estoy tratando de hacer un backup de una BD mysql, para ello cree un .bat con el siguiente código: Código:
set FECHA=%date% set FECHA=%FECHA:/=% set FECHA=%FECHA: =% set FECHA=%FECHA::=% set FECHA=%FECHA:,=% mysqldump.exe --opt --password=damian --user=damian test> D:\backups\Backup_%FECHA%.sql Saludos y espero que puedan corregirme que estoy haciendo mal. Código:
String Destino= ExtractFilePath(Application->ExeName)+"web server\\mysql\\bin\\Backup.bat"; SHELLEXECUTEINFO lpExecInfo; memset(&lpExecInfo, 0, sizeof(SHELLEXECUTEINFO)); lpExecInfo.cbSize = sizeof(SHELLEXECUTEINFO); lpExecInfo.lpFile = Destino.c_str(); lpExecInfo.lpParameters = 0; lpExecInfo.lpDirectory = 0; lpExecInfo.lpVerb = 0; lpExecInfo.nShow = SW_NORMAL; lpExecInfo.fMask = 0; ShellExecuteEx(&lpExecInfo); String Dia = Date(); ShowMessage("La salva de la BD fue creada satisfactoriamente con la Fecha " + Dia); Código:
ShellExecuteA(NULL,"open","D:\\Damian\\web server\\mysql\\bin\\Backup.bat",NULL,"",SW_SHOWNORMAL); |
#2
|
||||
|
||||
He probado esto y funciona correctamente
Fichero notepd.bat Código:
@echo off cls set fichero="%1%date%" set fichero=%fichero:/=% notepad.exe %fichero% exit
Un saludo
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber. Última edición por olbeup fecha: 13-04-2012 a las 19:46:12. |
#3
|
|||
|
|||
Gracias por responder, en el caso del notepad funciona perfectamente, pero el problema está en lo que le plantee anteriormente cuando se trata del mysqldump.exe dentro del .bat
|
#4
|
||||
|
||||
Es posible que sea la ruta
Un saludo
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber. Última edición por olbeup fecha: 13-04-2012 a las 19:55:11. |
#5
|
||||
|
||||
Yo creo que el problema es que ShellExecute no maneja la redirección de la salidad de un comando. Tendrías que usar CreateProcess especificando una tubería (pipe) de sailida para capturar el volcado de mysqldump.
Sin embargo, creo que puedes optar por algo mucho más sencillo, que es especificar el archivo de salida como parámetro de mysqldump usando la opción -r: Código:
mysqldump --password=damian --user=damian test -r D:\backups\Backup_%FECHA%.sql |
#6
|
|||
|
|||
Saludos
Esa opción que usted me da como podría utilizarla desde el c++ ?,la probé y funciona pero el problema está en como llamo ahora a ese .bat para que me haga lo que quiero. |
#7
|
||||
|
||||
Pues igual a como lo tienes ahora. Es decir, en el bat, en la línea del mysqladmin pones el cambio que te menciono.
Ahora bien, en realidad yo creo que puedes olvidarte del BAT. Calcula la fecha desde tu aplicación y manda llamr directamente a mysqladmin con ShellExecute. Por cierto, no entiendo qué es lo que hace tu BAT con la fecha. // Saludos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Backup y Restore desde delphi 7 & mysql | MRS@N | MySQL | 3 | 06-05-2012 03:57:28 |
backup Mysql desde c++ builde 6 | dmartinezn | MySQL | 1 | 22-01-2012 14:41:58 |
Problema para ejecutar una aplicacion con mysql desde una pc cliente | karaoke | MySQL | 4 | 23-01-2008 19:25:58 |
Ejecutar un Backup | sierraja | Firebird e Interbase | 11 | 18-09-2006 18:33:07 |
Como ejecutar un archivo .chm desde C++ Builder 5? | mapch | C++ Builder | 1 | 13-08-2004 08:01:47 |
|