将新数据库调整为预测的最大大小

目前我有一个约2 GB的SQL Server数据库。 我知道明年它会增长到最大的10Gb。 硬盘空间不是丝毫的问题。

是否存在将数据文件重新设置为20Gb的缺陷,然后对硬盘进行碎片整理?

我是否应该将日志文件的大小调整为1Gb? 一些可笑的东西,所以碎片也不会发生在那里。

有了这个问题,我想避免在磁盘本身的数据文件碎片,但我不想负面影响性能。

如果你能预测你的MDF和LDF尺寸,那就去做吧。

除了使用64k簇大小的分区alignment和格式(根据TomTom的回答),还要记住要对表进行碎片整理(索引维护)要求MDF中的空闲空间大约是该表的1.2倍。 所以你的MDF需要大约7.5GB的免费空间用于6GB的桌子。 这是意外MDF和LDF增长的常见原因。

我总是把db的大小调整到合理的大小。

更重要的是,正确的分区,特别是当你使用RAID单元时。 确保你的分区alignment。 并自定义NTFS格式与64GB节点大小。

碎片存在于两个层次:SQL和OS。 操作系统碎片只有在碎片驱动器上完成文件预先大小时才会发生。 如果根据最大需求调整文件大小并禁用自动增长,则除非手动将某些数据移动到创build的新数据文件,否则磁盘将不会被分段。

您应该使用dbcc showcontig检查SQL碎片。

所以是的,对于你的问题:最好的做法是根据不断增长的需求给出尺寸。 通过这种方式,SQL不会在空间分配上浪费时间,而且SQL数据字节在磁盘上保持连续的顺序。