none
SHRINKDATABASE ohne Ergebnis RRS feed

  • Frage

  • Hallo,

     

    Ich habe versucht die Datenbank per SHRINKDATABASE zu verkleinern. Leider passiert nichts. Es läuft stundenlang und es passiert nichts. Die Datenbank ca. 800 GB wobei 44% frei sind! Woran könnte das liegen?

    DBCC SHRINKDATABASE(DB,0); 

    Es handelt sich um einen SQL Server 2008.

     

    Vielen Dank

    Marvin

    Freitag, 25. März 2011 11:44

Antworten

  • Kann es sein, dass Du Tabellen ohne Clustered Index hast?. Falls Ja, solltest Du einen Clustered Index erstellen und anschliessend wieder löschen, um Speicherplatz freizugeben

    Was passiert, wenn Du DBCC SHRINKFILE mit Angabe eines target_size anstelle von DBCC SHRINKDATABASE verwendest? Lies dir mal in BOL durch, wo der Unterschied zwischen beiden Befehlen liegt.


    -- Frank Kalis Microsoft SQL Server MVP Webmaster: http://www.insidesql.org
    Freitag, 25. März 2011 15:22
  • Per DBCC SHRINKFILE mit fester Größenangabe hat es nun geklappt. Das Widerherstellungsmodell steht jedoch auf einfach.
    Samstag, 26. März 2011 15:28

Alle Antworten

  • Hi,
    ich habe versucht die Datenbank per SHRINKDATABASE zu verkleinern. Leider passiert nichts. Es läuft stundenlang und es passiert nichts. Die Datenbank ca. 800 GB wobei 44% frei sind! Woran könnte das liegen? 

    wo genau sind denn die 44% frei? In der Datenbank oder in den Logs? Falls letzteres, welches Widerherstellungsmodell hast Du für die Datenbank angegeben? "Vollständig"? Falls ja, solltest Du das Log auch mal sichern, sonst passiert da nix. Wenn Du das so nicht brauchst, wäre es sinnvoller, das Widerherstellungsmodell auf "Einfach" zu stellen, dann sollte es auch keine Probleme mit dem verkleinern geben.

     


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
    Freitag, 25. März 2011 12:20
    Moderator
  • Es handelt sich wirklich um die Datenbankdateien. Bei den Logfiles ist das kein Problem und läuft in wenigen sec. durch.

     

    Freitag, 25. März 2011 14:04
  • Kann es sein, dass Du Tabellen ohne Clustered Index hast?. Falls Ja, solltest Du einen Clustered Index erstellen und anschliessend wieder löschen, um Speicherplatz freizugeben

    Was passiert, wenn Du DBCC SHRINKFILE mit Angabe eines target_size anstelle von DBCC SHRINKDATABASE verwendest? Lies dir mal in BOL durch, wo der Unterschied zwischen beiden Befehlen liegt.


    -- Frank Kalis Microsoft SQL Server MVP Webmaster: http://www.insidesql.org
    Freitag, 25. März 2011 15:22
  • Per DBCC SHRINKFILE mit fester Größenangabe hat es nun geklappt. Das Widerherstellungsmodell steht jedoch auf einfach.
    Samstag, 26. März 2011 15:28