簡體   English   中英

什么正在使用我在SQL Server中的所有存儲

[英]What is using all my storage in SQL server

我有一個SQL Server數據庫,根據Properties => files,在主文件組中使用47GB的磁盤空間。

我99%確信我的數據庫不是那么大。

我從這篇文章中運行查詢https://www.mssqltips.com/sqlservertip/1177/determining-space-used-for-all-tables-in-a-sql-server-database/

並據此我的保留空間只有1 GB,那么我的數據庫怎么可能使用那么多的空間?

我縮小了日志文件,但是如上所述,它是該大小的主文件

在此處輸入圖片說明

根據我的評論: 數據庫文件增長時,它不會釋放空間; 最有可能在某個時候達到了47GB,也許是在您進行大負載並且您刪除了數據之后? 不釋放空間是有意的,實際上,除非知道自己在做什么,否則縮小數據庫是一個危險的失敗之路。 因為它很容易導致索引碎片等問題。

您可以使用sys.sp_spaceused;對象sys.sp_spaceused;有多少空間和未使用的空間sys.sp_spaceused; 這將詳細說明unallocated space列中的可用空間量。

如上所述,除非確實需要,否則不建議您收縮數據庫。 在收縮過程中很可能會發生碎片; 這可能會對數據庫性能產生(重大)影響。

數據庫由保留空間組成,其中一部分將是可用空間。 隨着數據庫的增長,可用空間會變小,直到觸發自動增長。 自動增長的增量設置為值或百分比。 最初創建數據庫時,可能會設置初始值為47023。 您可以將可用空間釋放回操作系統,但是您需要收縮數據文件(而非日志文件),而只是要了解數據庫的增長方式以及這些自動增長的頻率,因為這可能會導致性能下降。這樣做的妥協。

您可能會發現運行兩個內置的SSRS報告非常有用。 為此(在SQL Server Management Studio中),右鍵單擊數據庫名稱,然后向下選擇十個選項卡,將其標記為“報告”。 單擊它,然后嘗試“ Disk Usager”報告和“ Top Tables磁盤使用情況”報告。 它們是非常清晰的報告,您可能會對某些表有多大感到驚訝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM