locked
database SQL frozen / thawed RRS feed

  • Pregunta

  • Tengo un servidor con SQL 2000 y Windows 2003 y a las 3 a.m. , sin que esté programado hacerlo, aparecen 
    copias de seguridad del sistema con el ntbackup  de Windows, este utiliza las instantaneas de volumes y eso provoca
    que deja los ficheros de las bases de datos como "congelados" y asi lo advierte el visor de sucesos del SQL.

    Database basica: IO is frozen for snapshot
    Database basica: IO is thawed
    Database backed up: Database: basica, creation date(time): 2009/03/09(14:24:30), pages dumped: 1, first LSN: 9081:21510:1, last LSN: 9081:21512:1, number of dump devices: 1, device information: (FILE=1, TYPE=VIRTUAL_DEVICE: {'{8EAF4F86-D1B2-44DB-A45E-A54560C723FE}2'}).

    Que debo hacer ? es peligroso ?Muchas gracias

    viernes, 16 de octubre de 2009 10:35

Respuestas

  • Te contesté ya en el grupo de noticias microsoft.public.es.sqlserver. No obstante, por si a alguien le puede servir, copio y pego la respuesta:

    "Hombre, peligroso como tal no es. Esos mensajes lo que hacen es reflejar el
    hecho de que la base de datos se queda en un estado fuera de línea, pero si
    a la hora en que se ejecutan esos backups tiene una alta actividad, entonces
    sí que tienes un problema.

    En algún sitio tiene que estar programado esa tarea; revisa tu sistema para
    eliminar dicha programación si no te interesa que siga existiendo ese
    comportamiento. Los backups que realiza SQL Server dejan la base de datos
    operativa mientras se está realizando la operación, así que en ese sentido
    son mejor opción.

    De hecho, en http://support.microsoft.com/kb/903643 explica un poco el por
    qué de esos mensajes..."
    viernes, 16 de octubre de 2009 11:13
  • Hola.

    A la pregunta "¿Qué debo hacer?", la respuesta sería usar un mecanismo de backup con el te sientas cómodo.
    A la pregunta "¿Es peligroso?", la respuesta es un rotundo sí. Corres el peligro de que las bases de dato se congelen y luego no vuelvan a descongelarse, con lo que te quedas sin base de datos hasta que intervengas manualmente (la descongeles tú o reinicies el servicio).

    Desconozco el mecanismo que internamente usará NtBackup para realizar el snapshot, pero es más que posible que hagan uso de dbcc freezeIO y dbcc thawIO, ambos comandos no soportados, o de VDI, que sí está soportado. Internamente hacen cosas muy similares y el riesgo es el mismo. Por otra parte, esa congelación y descongelación tampoco te da muchas garantias de que luego podrás restaurar la base de datos, porque un parón en seco de la entrada/salida puede dejar el log en un estado que luego no pueda levantar.

    La solución que llevo años usando es realizar los snapshot desde cabina y sin congelar las IO, algo que no sé si podrás configurar con tu herramienta de backup. Es preferible hacer un backup y que no valga (que para eso lo verificas luego) frente a la posibilidad de quedarte sin producción por hacer el backup.

    Desde luego, si no está programado, no debería hacerse. Configura NtBackup para que no copie esos ficheros.




    Alberto López Grande (Visita mi blog en http://qwalgrande.blogspot.es/)
    viernes, 16 de octubre de 2009 12:41
    Moderador

Todas las respuestas

  • Te contesté ya en el grupo de noticias microsoft.public.es.sqlserver. No obstante, por si a alguien le puede servir, copio y pego la respuesta:

    "Hombre, peligroso como tal no es. Esos mensajes lo que hacen es reflejar el
    hecho de que la base de datos se queda en un estado fuera de línea, pero si
    a la hora en que se ejecutan esos backups tiene una alta actividad, entonces
    sí que tienes un problema.

    En algún sitio tiene que estar programado esa tarea; revisa tu sistema para
    eliminar dicha programación si no te interesa que siga existiendo ese
    comportamiento. Los backups que realiza SQL Server dejan la base de datos
    operativa mientras se está realizando la operación, así que en ese sentido
    son mejor opción.

    De hecho, en http://support.microsoft.com/kb/903643 explica un poco el por
    qué de esos mensajes..."
    viernes, 16 de octubre de 2009 11:13
  • Hola.

    A la pregunta "¿Qué debo hacer?", la respuesta sería usar un mecanismo de backup con el te sientas cómodo.
    A la pregunta "¿Es peligroso?", la respuesta es un rotundo sí. Corres el peligro de que las bases de dato se congelen y luego no vuelvan a descongelarse, con lo que te quedas sin base de datos hasta que intervengas manualmente (la descongeles tú o reinicies el servicio).

    Desconozco el mecanismo que internamente usará NtBackup para realizar el snapshot, pero es más que posible que hagan uso de dbcc freezeIO y dbcc thawIO, ambos comandos no soportados, o de VDI, que sí está soportado. Internamente hacen cosas muy similares y el riesgo es el mismo. Por otra parte, esa congelación y descongelación tampoco te da muchas garantias de que luego podrás restaurar la base de datos, porque un parón en seco de la entrada/salida puede dejar el log en un estado que luego no pueda levantar.

    La solución que llevo años usando es realizar los snapshot desde cabina y sin congelar las IO, algo que no sé si podrás configurar con tu herramienta de backup. Es preferible hacer un backup y que no valga (que para eso lo verificas luego) frente a la posibilidad de quedarte sin producción por hacer el backup.

    Desde luego, si no está programado, no debería hacerse. Configura NtBackup para que no copie esos ficheros.




    Alberto López Grande (Visita mi blog en http://qwalgrande.blogspot.es/)
    viernes, 16 de octubre de 2009 12:41
    Moderador