Shrinking a database to release unused space

  • I almost never run a shrinkdatabase command, because of the performance issues with autogrow etc, but my company has just purchased a database server without consulting me on the amount of space that is needed(if you can believe that). I ran a sp_spaceused and got the following info:

    database size 294646.75 mb

    unallocated space 32746.80 mb

    reserved 124973064 KB

    data 97625200 kb

    index size 27191080 kb

    unused 156784 kb

    I'm not that familiar with shrinkdatabase and I would think that i would only release the unused space

    and shrinking the database would do me no good!

  • that's only 10% free space. That's actually not much. I would consider increasing it in the next few months.

    You definitely don't need to shrink that db.

  • The only reason why I would consider shrinking the db is to get it small enough to move to our test db server, but, that's not going to help is it. The need to allocate more space on the test db server for me.

  • Depends on what you need to run on the test server.

    You could always restore a 2nd copy on prod, drop all NC indexes that are not keys. Then shrink.

    You can always dump the log too (restore, simple, checkpoint, backup / move / restore).

    But that assumes that you don't have to test performance on the test server.

    red-Gate also has a new utility that reads from the back file and turns in into a mounted db. That might be a shortcut for you.

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply