Pytanie : DB rozmiar pliku utrzymanie wzrost ale dużo dane w (SQL2005)

The baza danych kartoteka być o 1G, po tym jak wsparcie o 600M.

But tam  być dużo dane w ono. Być tam  jakaś unuseful info w ono?

I móc the DB.

BTW, ono backuped i wznawiać dla wiele times.

Thanks.

Odpowiedź : DB rozmiar pliku utrzymanie wzrost ale dużo dane w (SQL2005)

Próbować ten Pismo: --INF: Dlaczego The SQL Serwer 7.0 Transakcja Bela
-- 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
-- wybrany db_name ()
-- wybiórka * od sysfiles

-- TEN PISMO ZAMIERZAĆ DLA DOŁĄCZONY UŻYCIE!! CZYTAĆ BOL i the urls!!

USTAWIAĆ NOCOUNT DALEJ
OZNAJMIAĆ @LogicalFileName sysname,
        @MaxMinutes INT,
        @NewSize INT


-- *** UPEWNIAĆ SIĘ THE NASTĘPNY 3 LINIA Z TWÓJ KRYTERIUM. ***

WYBRANY @LogicalFileName = '',  -- Używać sp_helpfile the logiczny kartoteka - wymieniać że ty chcieć.
        @MaxMinutes = 10,               -- Ograniczenie na czas pozwolić bela.
        @NewSize = 305                  -- w MB

-- Tworzyć/initialize
OZNAJMIAĆ @OriginalSize int
WYBIÓRKA @OriginalSize = rozmiar -- w 8K strona
  OD sysfiles
  DOKĄD wymieniać = @LogicalFileName
WYBIÓRKA "Oryginał Rozmiar" + db_name () + "BELA być" +
        KONWERTYTA (VARCHAR (30), @OriginalSize) + "8K strona lub" +
        NAWRACAĆ (VARCHAR (30), (@ORIGINALSIZE*8/1024)) + "MB"
  OD sysfiles
  DOKĄD wymieniać = @LogicalFileName
TWORZYĆ STOŁOWY DummyTrans
  (DummyColumn char (8000) nieobowiązujący)


-- Zawijać bela i ścinać wierzchołek ono.
OZNAJMIAĆ @COUNTER INT,
        @StartTime DATETIME,
        @TruncLog VARCHAR (255)
WYBRANY @STARTTIME = GETDATE (),
        @TruncLog = "POMOCNICZY BELA" + db_name () + "Z TRUNCATE_ONLY"
-- Próbować początkowy kurczenie się.
DBCC SHRINKFILE (@LOGICALFILENAME, @NEWSIZE)
EXEC (@TruncLog)
-- Zawijać the bela jeżeli konieczny.
PODCZAS GDY @MaxMinutes > DATEDIFF (mi, @StartTime, GETDATE ()) -- czas tracić ważność
      I @OriginalSize = (WYBRANY rozmiar OD sysfiles DOKĄD imię = @LogicalFileName)  -- the bela kurczyć się    
      I (@OriginalSize * 8 /1024) > @NewSize  -- The wartość przechodzić wewnątrz dla nowy rozmiar być mały the aktualny rozmiar.
  ZACZYNAĆ -- Zewnętrzny pętla.
    WYBRANY @Counter = (0)
    PODCZAS GDY ((@COUNTER <�>      ZACZYNAĆ -- aktualizacja
        WSZYWKA DummyTrans WARTOŚĆ ("Pełnia Bela ")  -- Ponieważ ono być char pole ono wkładać 8000 bajt.
        DELEATUR DummyTrans
        WYBRANY @Counter = @Counter + (1)
      KOŃCÓWKA   -- aktualizacja
    EXEC (@TruncLog)  -- Widzieć jeżeli trunc the bela kurczyć się ono.
  KOŃCÓWKA   -- zewnętrzny pętla
WYBIÓRKA "Finał Rozmiar" + db_name () + "BELA być" +
        NAWRACAĆ (VARCHAR (30), rozmiar) + "8K strona lub" +
        NAWRACAĆ (VARCHAR (30), (size*8/1024)) + "MB"
  OD sysfiles
  DOKĄD wymieniać = @LogicalFileName
OPUSZCZAĆ STOŁOWY DummyTrans
DRUK "*** Wykonywać folować baza danych pomocniczy ***"
SET NOCOUNT DALEKO
Inne rozwiązania  
 
programming4us programming4us