我正在将我创建的数据库传输到服务器机器上,但出于某种原因,数据库的大小约为 8GB。它不应该需要这么多空间,因为我只有几百条记录。我怎样才能减小这个大小?如果有人知道,这里发生了什么?
谢谢
答案1
检查事务日志的大小。这可能是占用空间最多的地方。SQL Server 事务日志文件很容易快速增长,特别是如果您不定期备份。
如果是这种情况,您可以了解有关管理事务日志大小的更多信息这里
答案2
它曾经比那更大吗?
数据库的大小是“分配的大小”,而不是实际大小。假设您有 99 mb 的数据,而您的数据库已分配 100 mb。如果您将数据库设置为每次增加 1Gb,则当它达到 100 mb(并且需要增加)时,它将分配 1Gb 并变为 1.1Gb(100 mb 的数据和 1 Gb 的分配)
您可以通过右键单击数据库->属性->文件来检查此配置
答案3
尝试在本地数据库上运行此操作:
EXEC sp_MSforeachtable @command1="EXEC sp_spaceused‘?’"
这将显示每个表用于数据、索引等的空间大小。
答案4
首先检查数据库中有多少可用空间,然后尝试缩小数据库并检查任何表是否占用了更多空间。
DB收缩命令:DBCC SHRINKDATABASE (UserDB, 10);
表空间:-SP_MSFOREACHTABLE
检查日志文件-DBCC SQLPERF(logspace)