Problemas con un RESTORE (mi posta original, ya quedo almacenada)

26/12/2007 - 20:09 por Isaias | Informe spam
Tengo un esquema de respaldos, FULL, DIF y TRN (Transaccional).

El Full se ejecuta los domingos a las 3 am
El Dif se ejecuta todos los dias a las 8 am
El Trn se ejecuta cada 15 minutos del dia.

Por necesidad, tuve que recuperar la informacion aplicando primeramente el
restore del full, de la siguiente forma:

RESTORE DATABASE mybase FROM DISK =
'C:\carpeta1\BAK\BACKUP\mybase_20071209_050001.BAK'
WITH MOVE 'mybase_Data' TO 'C:\DATABASES\mybase_Data.MDF',
MOVE 'mybase_Log' TO 'C:\DATABASES\mybase_Log.LDF',
NORECOVERY

Como veran, la ruta original, no existe en el servidor actual
(d:\databases\produccion\), por lo que tuve que utilizar la instruccion MOVE.

Aplico el DIF

RESTORE DATABASE mybase FROM DISK =
'C:\carpeta1\DIF\BACKUP\mybase_20071214_080001.DIF'
WITH MOVE 'mybase_Data' TO 'C:\DATABASES\mybase_Data.MDF',
MOVE 'mybase_Log' TO 'C:\DATABASES\mybase_Log.LDF',
NORECOVERY

Hasta aqui, todo bien, me deja la base en "Loading", pero, al intentar
aplicar el primer backup del LOG de transacciones:

RESTORE LOG mybase FROM DISK =
'C:\carpeta1\TRN\BACKUP\mybase_20071214_090000.TRN'
WITH MOVE 'mybase_Data' TO 'C:\DATABASES\mybase_Data.MDF',
MOVE 'mybase_Log' TO 'C:\DATABASES\mybase_Log.LDF', RECOVERY

Me envia el siguiente mensaje de error:

Server: Msg 4330, Level 16, State 4, Line 1
The log in this backup set cannot be applied because it is on a recovery
path inconsistent with the database.
Server: Msg 3013, Level 16, State 1, Line 1
RESTORE LOG is terminating abnormally.

Ya intente hacerlo sin MOVE:

RESTORE LOG mybase FROM DISK =
'C:\carpeta1\TRN\BACKUP\mybase_20071214_090000.TRN', RECOVERY

Y tambien recibo el mismo mensaje de error.

¿Alguna recomendacion?

Saludos
IIslas
 

Leer las respuestas

#1 Anonimo
26/12/2007 - 23:06 | Informe spam
Hola Isaias,

Me sorprende el error, pero en cualquier caso, vamos a intentar dar alguna
pista, a ver si podemos conseguirlo (el no ya lo tenemos...)

Todos los BACKUPs deben ser con la opción NORECOVERY... excepto el último,
que habrá que indicar RECOVERY para restablecer el acceso. No creo que esté
aquí el error, porque de ser así el fallo estaría al intentar recuperar el
segundo fichero de LOG, y no el primero.

Por otro lado, si los backups de LOG son cada 15 minutos, ¿no se debería
restaurar primero el backup de LOG de las 8:15 y después todos los Backups
de LOG hasta la hora que desees? Pregunto, porque no sé si son cada 15
minutos... o cada 15 minutos desde las 9:00... en fin... por acotar el
problema recuerda que la opción STOPAT existe y aporta muchas alegrías a
los DBAs.

También tienes otra alternativa, que es un poco pesada, pero quizás te
sirva: Restaurar el FULL, y todos los Backups de LOG desde el FULL. Si el
problema está en el Backup Diferencial, podríamos evitarlo de este modo.
Incluso, podríamos pasar del último FULL y restaurar el penúltimo FULL y
todos los Backups de LOG desde el mismo...

Espero te sirvan estos comentarios.

Saludos,

GuilleSQL
http://www.guillesql.es

"Isaias" wrote in message
news:
Tengo un esquema de respaldos, FULL, DIF y TRN (Transaccional).

El Full se ejecuta los domingos a las 3 am
El Dif se ejecuta todos los dias a las 8 am
El Trn se ejecuta cada 15 minutos del dia.

Por necesidad, tuve que recuperar la informacion aplicando primeramente
el
restore del full, de la siguiente forma:

RESTORE DATABASE mybase FROM DISK > 'C:\carpeta1\BAK\BACKUP\mybase_20071209_050001.BAK'
WITH MOVE 'mybase_Data' TO 'C:\DATABASES\mybase_Data.MDF',
MOVE 'mybase_Log' TO 'C:\DATABASES\mybase_Log.LDF',
NORECOVERY

Como veran, la ruta original, no existe en el servidor actual
(d:\databases\produccion\), por lo que tuve que utilizar la instruccion
MOVE.

Aplico el DIF

RESTORE DATABASE mybase FROM DISK > 'C:\carpeta1\DIF\BACKUP\mybase_20071214_080001.DIF'
WITH MOVE 'mybase_Data' TO 'C:\DATABASES\mybase_Data.MDF',
MOVE 'mybase_Log' TO 'C:\DATABASES\mybase_Log.LDF',
NORECOVERY

Hasta aqui, todo bien, me deja la base en "Loading", pero, al intentar
aplicar el primer backup del LOG de transacciones:

RESTORE LOG mybase FROM DISK > 'C:\carpeta1\TRN\BACKUP\mybase_20071214_090000.TRN'
WITH MOVE 'mybase_Data' TO 'C:\DATABASES\mybase_Data.MDF',
MOVE 'mybase_Log' TO 'C:\DATABASES\mybase_Log.LDF', RECOVERY

Me envia el siguiente mensaje de error:

Server: Msg 4330, Level 16, State 4, Line 1
The log in this backup set cannot be applied because it is on a recovery
path inconsistent with the database.
Server: Msg 3013, Level 16, State 1, Line 1
RESTORE LOG is terminating abnormally.

Ya intente hacerlo sin MOVE:

RESTORE LOG mybase FROM DISK > 'C:\carpeta1\TRN\BACKUP\mybase_20071214_090000.TRN', RECOVERY

Y tambien recibo el mismo mensaje de error.

¿Alguna recomendacion?

Saludos
IIslas

Preguntas similares