We have a fairly big MS SQL 2008R2 database that resides on a SSD drive. The drive itself only has ~110Gb of space, and the database files are the only files on the drive.
The database is in "Simple" recovery mode, and only has two files, .MDF and .LDF.
The disk is now nearly full: the MDF is currently 109Gb in size. However, SSMS tells me there's nearly 18Gb of "Space Available" (in the 'General' properties page), and if I go through the motions of
Shrinking the file it also tells me there's 18Gb of space free. SSMS also tells me the database size is around 132Gb, which surprises me - that wouldn't fit on the drive!
From what I've read,
shrink is a really bad idea. However, I'm starting to see replication errors (
could not allocate space for object). We've previously tried shrinking the database, but within a few hours the file was back to it's original size.
How should we proceed - given there's apparently 18Gb of free space, should SQL automatically use that free space? Or is it as simple as: we really need more disk space?