我有一些数据库,每个数据库都有四个文件;一个用于 PRIMARY、IDX、IMAGE、LOG,它们的初始大小分别设置为 200MB,但它们消耗的空间要少得多,总共约为 100MB。
1) 是否可以在使用数据库文件时将其大小调整到更合理的大小,例如“当前消耗”+ 10MB?
2) 是否可以将这些文件合并为一个 .mdf 和 .ldf?
对此问题我的首选答案是一些 T-SQL,但我会接受 MSDN(或其他站点)的链接,其中包含要查找的 T-SQL 的引用。
最佳答案
1) DBCC SHRINKFILE或SHRINKDATABASE 。 SQL Management Studio 中还有一个针对所有任务的上下文单击。
如果它们设置为自动增长,那么它们就会这样做,并撤消您的收缩。收缩操作最适合当数据库中发生大量数据删除时,或者当服务器因磁盘空间不足而崩溃时。
2)是的,但是它非常困难。您将删除所有表并在目标文件组上创建它们,然后重新填充它们。可能有一种方法可以使用RESTORE来做到这一点选项,但恕我直言,如果文件少于 10 个,您最好保留它们。
关于sql-server - SQL Server 2005 : File Resizing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/343924/