At my company we have an SQL Server 2005 install on the c: drive of a virtual machine. All the actual database files live on a separate (virtual) data drive, E:. The c: drive is tiny and has about a gig and a half of disk space left, while E: is enormous.
I have a database, stored on E:, which I'm trying to restore from a backup, also stored on E:. But when I try, SQL Server tells me that
There is insufficient free space on disk volume 'C:\' to create the database. The database requires 3804626944 additional free bytes, while only 1791596544 bytes are available.
...which is true, as far as it goes: C: really does have that much space left. But why would that matter? The .bak file, the .mdf and .LDF, they're all on E:!
How can I convince SQL Server 2005 to create its temporary files, or whatever it thinks it needs all that disk space for, on E: where there's plenty of room?