Welcome to Sign in | Help
in Search

pot limita minim fisierul de Log (.ldf-ul) ?

Last post 08-10-2007, 12:59 PM by Alex. 7 replies.
Sort Posts: Previous Next
  •  08-09-2007, 8:55 AM 2424

    pot limita minim fisierul de Log (.ldf-ul) ?

    Salut,

    exista posibilitatea ca in sql server 2000 sa definesc pentru o baza de date o dimensiune MINIMA a fisierului de Transaction Log

    de exemplu am o baza de date de ~ 5 GB (Data Files .... mdf-ul) pe care execut la un anumit interval de timp Transaction Log Backup care imi tine oarecum sub control dimensiunea fisierului de Log (ldf - ul)......sa zicem ca in timpul unei zile log-ul creste la 2GB dupa care se realizeaza acest backup de Log si il face la ~10MB (care mi se pare f mic pt. o baza de date de 5 GB)....pe urma daca el se mareste cu 15-20 %(depinde cum e definit sa creasca) tot creste cu f putin spatiu si in urma unei trazactii efectuate pe baza de date el este obligat sa creasca de mai multe ori incetinind aceea tranzactie.....bine pot sa-l definesc si sa creasca cu un anumit numar de MB dar nu asta vreau

    ce mi-as dori eu este ca atunci cand se face transaction log backup chiar fisierul de Log sa fie golit act trebuie dar dimensiunea lui sa ramana la ~ 1GB....deci sa nu scada sub valoarea asta

    multumesc.

    alex.

  •  08-09-2007, 11:42 AM 2425 in reply to 2424

    Re: pot limita minim fisierul de Log (.ldf-ul) ?

    În momentul în care se face backup la transaction log, acesta se goleşte, dar nu se micşorează. El se micşorează doar dacă faci shrink, dar NU e recomandabil să faci acest lucru periodic (vezi http://www.karaszi.com/SQLServer/info_dont_shrink.asp).

    Răzvan 

  •  08-09-2007, 11:49 AM 2426 in reply to 2425

    Re: pot limita minim fisierul de Log (.ldf-ul) ?

    De asemenea am inteles ca "shrink" - ul nu poate reduce dimensiunea fisierului "mai jos" decat dimensiunea cu care a fost creat (sau modificat prin ALTER DATABASE...). De exemplu poti incerca sa creezi baza cu logul avand size = 1GB - sperand ca am inteles ce vrei...Smile
  •  08-09-2007, 12:56 PM 2429 in reply to 2426

    Re: pot limita minim fisierul de Log (.ldf-ul) ?

    Diana:
    De asemenea am inteles ca "shrink" - ul nu poate reduce dimensiunea fisierului "mai jos" decat dimensiunea cu care a fost creat (sau modificat prin ALTER DATABASE...). De exemplu poti incerca sa creezi baza cu logul avand size = 1GB

    Diana, nu e chiar aşa. Încearcă, de exemplu, următorul script:

    CREATE DATABASE ShrinkTest
        ON (NAME='DataFile', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\DataFile.mdf', SIZE=100 MB)
        LOG ON (NAME='LogFile', FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\LogFile.ldf', SIZE=100 MB)
    GO
    ALTER DATABASE ShrinkTest SET RECOVERY FULL
    GO
    EXEC sp_helpdb 'ShrinkTest'
    GO
    USE ShrinkTest
    DBCC SHRINKFILE('LogFile',5)
    GO
    EXEC sp_helpdb 'ShrinkTest'
    GO
    USE master
    DROP DATABASE ShrinkTest

    După cum se observă, fişierul de log a putut fi micşorat la 25 MB (faţă de 100 MB, cât avea iniţial). Totuşi, noi am specificat că am dori să-l micşorăm la 5 MB şi nu a putut fi micşorat aşa de mult, dar asta e din alte cauze, legate de numărul de "logical log files" (acestea pot fi afişate cu DBCC LOGINFO). Dacă se întâmplă ceva activitate în baza de date, iar apoi se fac backup-uri la log, probabil ar putea fi micşorat şi mai mult (cu DBCC SHRINKFILE), chiar până la 1MB (dar după cum spuneam, nu e bine să facem asta în mod regulat).

    Răzvan 

  •  08-09-2007, 1:50 PM 2431 in reply to 2429

    Re: pot limita minim fisierul de Log (.ldf-ul) ?

    eu am facut asa:

    USE master
    GO
    ALTER DATABASE DBName
    MODIFY FILE
       (NAME = DBName_Log,
       SIZE = X MB) -- unde x este 25% din Data File (.mdf)
    GO

     dupa care am observat ca oricate backupuri de transaction Log as face ....fisierul de Log se va goli dar nu va scadea ca dimensiune sub X

    multumesc mult

    alex.

  •  08-10-2007, 10:07 AM 2436 in reply to 2431

    Re: pot limita minim fisierul de Log (.ldf-ul) ?

    se pare ca m-am inselat :(

    scade sub dimensiunea X...deci backupul de transaction log goleste dar face si shrink

    alex.

  •  08-10-2007, 12:28 PM 2440 in reply to 2436

    Re: pot limita minim fisierul de Log (.ldf-ul) ?

    Backup-ul de transaction log nu face automat shrink. Vezi dacă ai vreun maintenance plan care îţi face shrink.

    Răzvan 

  •  08-10-2007, 12:59 PM 2441 in reply to 2440

    Re: pot limita minim fisierul de Log (.ldf-ul) ?

    am un maintenace plan care face shirnk....are bifa de la tabul Optimization >> remove unused space...>>shrink database when it grows beyond....dar se execuat doar Sunday la 10.30....deci nu zilnic....

     ieri am facut un alter database si i-am dat size la ldf de 1400 MB si pt ca se executa acel transaction log backup la interval de 3 ore azi l-am gasit la ~ 50 MB iar

     

    alex.

View as RSS news feed in XML
Powered by Community Server (Commercial Edition), by Telligent Systems