Cuestión : Aumento de la subsistencia del tamaño del archivo del DB pero no muchos datos en (SQL2005)

El archivo de base de datos está sobre 1G, después de que el respaldo sobre 600M.

But allí no sea muchos datos en él. ¿Hay Info unuseful en él? el

I puede querer limpiar el DB. el

BTW, backuped y se ha restaurado para muchos times.

Thanks.
class= del

Respuesta : Aumento de la subsistencia del tamaño del archivo del DB pero no muchos datos en (SQL2005)

Intentar esta escritura: --INF: Cómo encoger el registro de transacción del servidor 7.0 del SQL
-- SQL7 http://support.microsoft.com/support/kb/articles/q256/6/50.asp?id=256650&SD
-- SQL7 http://www.support.microsoft.com/kb/256650  
-- SQL2000 http://support.microsoft.com/kb/272318/en-us
-- SQL2005 http://support.microsoft.com/kb/907511/en-us
-- seleccionar el db_name ()
-- seleccionar * de sysfiles

-- ¡ESTA ESCRITURA NO SE PIENSA PARA EL USO PROGRAMADO!! ¡LEER BOL y los URL!!

FIJAR NOCOUNT ENCENDIDO
DECLARAR el sysname del @LogicalFileName,
        @MaxMinutes internacional,
        @NewSize la internacional


-- EL *** SE CERCIORA DE CAMBIAR LAS 3 LÍNEAS SIGUIENTES CON SUS CRITERIOS. ***

SELECCIONAR el @LogicalFileName = '',  -- Utilizar sp_helpfile para identificar el nombre de fichero lógico que usted quiere para encogerse.
        @MaxMinutes = 10,               -- Límite el el tiempo permitido envolver el registro.
        @NewSize = 305                  -- en el MB

-- Fijar/inicializarse
DECLARAR @OriginalSize la internacional
SELECTO @OriginalSize = tamaño -- en las páginas 8K
  De sysfiles
  DONDE nombrar = @LogicalFileName
El “tamaño original SELECTO de” + db_name () + “REGISTRO es” +
        CONVERTIDO (VARCHAR (30), @OriginalSize) + “páginas 8K o” +
        CONVERTIR (VARCHAR (30), (@ORIGINALSIZE*8/1024)) + “MB”
  De sysfiles
  DONDE nombrar = @LogicalFileName
CREAR la TABLA DummyTrans
  (Carbón de leña de DummyColumn (8000) no nulos)


-- Envolver el registro y truncarlo.
DECLARAR EL @COUNTER INTERNACIONAL,
        FECHA Y HORA del @StartTime,
        @TruncLog VARCHAR (255)
SELECCIONAR EL @STARTTIME = GETDATE (),
        @TruncLog = “REGISTRO DE RESERVA” + db_name () + “CON TRUNCATE_ONLY”
-- Intentar a encogimiento inicial.
DBCC SHRINKFILE (EL @LOGICALFILENAME, @NEWSIZE)
EXEC (@TruncLog)
-- Envolver el registro en caso de necesidad.
MIENTRAS QUE @MaxMinutes > DATEDIFF (MI, @StartTime, GETDATE ()) -- el tiempo no ha expirado
      Y @OriginalSize = (tamaño SELECTO de los sysfiles DONDE nombre = el @LogicalFileName)  -- el registro no se ha encogido    
      Y (@OriginalSize * 8 /1024) > @NewSize  -- El valor pasó adentro para el nuevo tamaño es más pequeño que el tamaño actual.
  COMENZAR -- Lazo externo.
    SELECCIONAR el @Counter = 0
    MIENTRAS QUE ((EL @COUNTER <�>      COMIENZA -- actualización
        INSERTAR los VALORES de DummyTrans (“registro del terraplén ")  -- Porque es un campo del carbón de leña inserta 8000 octetos.
        CANCELACIÓN DummyTrans
        SELECCIONAR el @Counter = el @Counter + 1
      EXTREMO   -- actualización
    EXEC (@TruncLog)  -- Ver si un trunc del registro lo encoge.
  EXTREMO   -- lazo externo
El “tamaño final SELECTO de” + db_name () + “REGISTRO es” +
        CONVERTIR (VARCHAR (30), tamaño) + “las páginas 8K o” +
        CONVERTIR (VARCHAR (30), (size*8/1024)) + “MB”
  De sysfiles
  DONDE nombrar = @LogicalFileName
CAER la TABLA DummyTrans
La IMPRESIÓN “*** realiza un *** de reserva de la base de datos completa”
FIJAR NOCOUNT APAGADO
Otras soluciones  
 
programming4us programming4us