Respaldo de base de datos
Publicado por pavy (31 intervenciones) el 29/09/2007 18:53:58
Hola!
Estoy desarrollando un sistema en power builder 6.0, y necesito hacer un respaldo de las bases de datos, tengo un procedimiento, en cual me funciona pero cuando alguna tabla es muy grande y contiene muchos campos el proceso es muy tardado y se me satura la base de datos tengo que estar entrando en el SQL Server Manager a la base de datos y vacio el Log --- en la opcion de backup, database, transaction log, truncate and no log,
lo que me ayuda a que el proceso termine pero aun asi es muy lento.
Este el procedimiento que utilizo
sqlcapipe = CREATE transaction
SQLCApipe.DBMS = "ODBC"
SQLCApipe.AutoCommit = False
SQLCApipe.DBParm = "Connectstring='DSN=respaldo'"
CONNECT using sqlcapipe
u_prueba u_pipe
u_pipe = CREATE u_prueba
string tablasrespaldo[]= {"pipe_aretes2",&
"pipe_tabla1",&
"pipe_tabla2",&
"pipe_tabla3",&
"pipe_tabla4",&
}
for v=1 to 4
u_pipe.DataObject = tablasrespaldo[v]
u_pipe.Start(sqlca, sqlcapipe, dw_1)
next
date fe
fe=today()
UPDATE fechas_respaldo
SET fecha = :fe
WHERE fechas_respaldo.sistema = 'rastro' ;
commit USING sqlcapipe;
messagebox('',string(fe))
disconnect using sqlcapipe;
Me gustaria que me dijeran si existe algun procedimiento que sea mas rapido, y que no tenga ningun problema para al respaldar y restaurar los datos.
Muchas gracias desde ahora.
Estoy desarrollando un sistema en power builder 6.0, y necesito hacer un respaldo de las bases de datos, tengo un procedimiento, en cual me funciona pero cuando alguna tabla es muy grande y contiene muchos campos el proceso es muy tardado y se me satura la base de datos tengo que estar entrando en el SQL Server Manager a la base de datos y vacio el Log --- en la opcion de backup, database, transaction log, truncate and no log,
lo que me ayuda a que el proceso termine pero aun asi es muy lento.
Este el procedimiento que utilizo
sqlcapipe = CREATE transaction
SQLCApipe.DBMS = "ODBC"
SQLCApipe.AutoCommit = False
SQLCApipe.DBParm = "Connectstring='DSN=respaldo'"
CONNECT using sqlcapipe
u_prueba u_pipe
u_pipe = CREATE u_prueba
string tablasrespaldo[]= {"pipe_aretes2",&
"pipe_tabla1",&
"pipe_tabla2",&
"pipe_tabla3",&
"pipe_tabla4",&
}
for v=1 to 4
u_pipe.DataObject = tablasrespaldo[v]
u_pipe.Start(sqlca, sqlcapipe, dw_1)
next
date fe
fe=today()
UPDATE fechas_respaldo
SET fecha = :fe
WHERE fechas_respaldo.sistema = 'rastro' ;
commit USING sqlcapipe;
messagebox('',string(fe))
disconnect using sqlcapipe;
Me gustaria que me dijeran si existe algun procedimiento que sea mas rapido, y que no tenga ningun problema para al respaldar y restaurar los datos.
Muchas gracias desde ahora.
Valora esta pregunta


0