Generar Backup/Restaurar la BD desde Genexus
Publicado por Andrés (1 intervención) el 06/02/2013 16:59:32
Hola, quisiera saber como poder generar un backup y restaurar la BD desde Genexus.
Lo que estuve probando hasta ahora es:
1) Shell:
&Ret = Shell('c:\models\backup.bat')
Dice que el archivo no existe
&Ret = Shell('backup.bat')
Se ejecuta pero no pasa nada
&Ret = Shell('command /x T:\Knowledge base (developer)\AndresG\CVNow\CSharpModel\Web\backup.bat',1)
Aca probe otra ruta (la del directorio raiz del Genexus) y agregue el command /x pero se queda "procesando" y nunca termina.
2) DBase Run
dbase run "c:\models\backup.bat"
No pasa nada pruebe con la ruta que pruebe.
3) Java
JAVA try {
JAVA Runtime.getRuntime().exec("c:\models\backup.bat");
JAVA }
JAVA catch (java.io.IOException e) {System.out.println(e); }
Tampoco hace nada.
4) Sql embebido
&variable = "BACKUP DATABASE [AndresG_AllIncident] TO DISK = N'C:\Models\test.bak' WITH NOFORMAT, INIT, NAME = N'AndresG_AllIncident-Completa Base de datos Copia de seguridad',SKIP, NOREWIND, NOUNLOAD, STATS = 10"
SQL [!&variable!]
Aca me tira un error: No se puede hacer la copia de seguridad o restauración dentro de una
transacción.
Fin anómalo de BACKUP DATABASE.
Las 3 rutas que estuve probando son:
c:\models\backup.bat
T:\Knowledge base (developer)\...\CSharpModel\Web\backup.bat
\\srvfls001\desarrollo\Knowledge base (developer)\...\CSharpModel\web\backup.bat
El contenido del bat es (si lo ejecuto solo me funciona):
sqlcmd -S wks004des\sqlexpress -i "c:\models\backup.sql" -o "c:\models\backup.log"
Gracias.
Lo que estuve probando hasta ahora es:
1) Shell:
&Ret = Shell('c:\models\backup.bat')
Dice que el archivo no existe
&Ret = Shell('backup.bat')
Se ejecuta pero no pasa nada
&Ret = Shell('command /x T:\Knowledge base (developer)\AndresG\CVNow\CSharpModel\Web\backup.bat',1)
Aca probe otra ruta (la del directorio raiz del Genexus) y agregue el command /x pero se queda "procesando" y nunca termina.
2) DBase Run
dbase run "c:\models\backup.bat"
No pasa nada pruebe con la ruta que pruebe.
3) Java
JAVA try {
JAVA Runtime.getRuntime().exec("c:\models\backup.bat");
JAVA }
JAVA catch (java.io.IOException e) {System.out.println(e); }
Tampoco hace nada.
4) Sql embebido
&variable = "BACKUP DATABASE [AndresG_AllIncident] TO DISK = N'C:\Models\test.bak' WITH NOFORMAT, INIT, NAME = N'AndresG_AllIncident-Completa Base de datos Copia de seguridad',SKIP, NOREWIND, NOUNLOAD, STATS = 10"
SQL [!&variable!]
Aca me tira un error: No se puede hacer la copia de seguridad o restauración dentro de una
transacción.
Fin anómalo de BACKUP DATABASE.
Las 3 rutas que estuve probando son:
c:\models\backup.bat
T:\Knowledge base (developer)\...\CSharpModel\Web\backup.bat
\\srvfls001\desarrollo\Knowledge base (developer)\...\CSharpModel\web\backup.bat
El contenido del bat es (si lo ejecuto solo me funciona):
sqlcmd -S wks004des\sqlexpress -i "c:\models\backup.sql" -o "c:\models\backup.log"
Gracias.
Valora esta pregunta
0