Welcome to Sign in | Help

Re: shrink

  •  12-20-2007, 9:02 AM

    Re: shrink

    Care dintre fişiere este cel mare ? MDF-ul (fişierul de date) sau LDF-ul (transaction log-ul) ?

    Dacă LDF-ul este prea mare, atunci recomandarea lui Katalyn ar fi bună: trebuie să faceţi (în mod regulat) backup-uri de transaction log. După primul backup de log, un DBCC SHRINKFILE('Numele logic al fişierului de log',100) ar trebui să micşoreze LDF-ul la circa 100MB.

    Dacă MDF-ul este prea mare şi este mult unallocated space, atunci puteţi să-i daţi un DBCC SHRINKFILE('Numele logic al fişierului de date',100), şi MDF-ul ar trebui să se micşoreze, lăsând doar 100MB liberi.

    Dacă MDF-ul este prea mare şi este mult unused space, atunci puteţi încerca să îi daţi DBCC DBREINDEX pe fiecare tabelă, pentru a defragmenta indecşii. Apoi, puteţi să-i daţi DBCC SHRINKFILE('Numele logic al fişierului de date',100).

    În orice caz, dacă folosiţi DBCC SHRINKFILE pentru fişierul de date (fără a specifica NOTRUNCATE), fragmentarea datelor va creşte semnificativ. Drept urmare, dacă chiar e nevoie de shrink, e recomandabil să lăsaţi un spaţiu liber semnificativ în fişier (de exemplu, 10%, dar nu mai puţin de 50MB), iar după ce faceţi DBCC SHRINKFILE să faceţi DBCC DBREINDEX (pentru fiecare tabelă) sau DBCC INDEXDEFRAG (pentru fiecare index).

    Răzvan Socol
    SQL Server MVP
     

View Complete Thread
Powered by Community Server (Commercial Edition), by Telligent Systems