我有一个数据库,其大小增长非常快。目前它的大小约为 60GB,但是在执行 db_spaceused 存储过程之后,我可以验证有超过 40GB 未使用(未使用的空间不同,我理解的不是保留空间用于表增长)。实际数据大小约为 10-12 GB,保留空间中只有几 GB。
现在为了收集未使用的空间,我尝试使用收缩操作,但结果没有帮助。进一步搜索后,我还发现不要使用收缩数据库,因为这会导致生成数据片段,从而导致磁盘操作时的延迟。现在我真的不确定我应该尝试什么其他操作来重新收集空间并重新收集数据库。我不知道由于大小查询可能需要比预期更长的时间,并且回收这个空间可能有助于提高性能(不确定)。
在调查时,我还遇到了 Gererate Scripts 功能。它也有助于导出数据、模式,但我不确定它是否也有助于创建脚本(每个用户、权限和其他东西),这样脚本将帮助创建数据库的副本(深拷贝/克隆),然后使用 create scema将数据填充到其他数据库/服务器?
任何指针都会有所帮助。