SQL SERVER工作日誌--我的資料庫會裝滿嗎?

來源:互聯網
上載者:User

標籤:

背景

  今天有個客戶問我一個蠻有意思的問題。我使用的SQL SERVER 2008的資料庫。目前資料庫130多G了。其中某個表的就有

3億1千多萬的記錄數,佔用了50多G。那SQL SERVER 資料庫中某一表有沒有行數限制和列數限制呢?會不會突然有一天,超過這個限制

我的系統就不能使用了?

 

 

分析

   這個問題其實在微軟的官方文檔已經給出瞭解釋。只是大家可能沒有注意看。具體結果如所示:

SQL Server 資料庫引擎對象

最大大小/數量 - SQL Server(32 位)

最大大小/數量 - SQL Server(64 位元)

每個 GROUP BY、ORDER BY 的位元組數

8,060

8,060

每個索引鍵的位元組數2

900

900

每個外鍵的位元組數

900

900

每個主鍵的位元組數

900

900

每行的位元組數8

8,060

8,060

每個 varchar(max)、varbinary(max)、xml、text 或image 列的位元組數

2^31-1

2^31-1

每個 ntext 或 nvarchar(max) 列的字元數

2^30-1

2^30-1

每個資料表的叢集索引數

1

1

GROUP BY、ORDER BY 中的列數

僅受位元組數限制

僅受位元組數限制

GROUP BY WITH CUBE 或 WITH ROLLUP 語句中的列數或運算式數目

10

10

每個索引鍵的列數7

16

16

每個外鍵的列數

16

16

每個主鍵的列數

16

16

每個非寬表的列數

1,024

1,024

每個寬表的列數

30,000

30,000

每個 SELECT 語句的列數

4,096

4,096

每個 INSERT 語句的列數

4096

4096

每個用戶端的串連個數

已配置串連的最大值

已配置串連的最大值

資料庫大小

524,272 TB

524,272 TB

每個 SQL Server 執行個體的資料庫個數

32,767

32,767

每個資料庫的檔案組個數

32,767

32,767

每個資料庫的檔案個數

32,767

32,767

檔案大小(資料)

16 TB

16 TB

檔案大小(日誌)

2 TB

2 TB

每個表的外鍵表引用數4

253

253

標識符長度(以字元計)

128

128

每台電腦的執行個體數

所有 SQL Server 版本(Workgroup 除外)的獨立伺服器上為 50 個執行個體。Workgroup 支援每台電腦上最多有 16 個執行個體。

SQL Server 支援容錯移轉叢集上有 25 個執行個體。

獨立伺服器上為 50 個執行個體。

容錯移轉叢集上 25 個執行個體。

包含 SQL 陳述式的字串的長度(批大小)1

65,536 * 網路資料包大小

65,536 * 網路資料包大小

每個串連的鎖數

每個伺服器的最大鎖數

每個伺服器的最大鎖數

每個 SQL Server 執行個體的鎖數5

最多 2,147,483,647

僅受記憶體限制

嵌套預存程序層級數6

32

32

嵌套子查詢個數

32

32

嵌套觸發器層數

32

32

每個資料表的非叢集索引個數

999

999

存在以下任意子句的情況下 GROUP BY 子句中的非重複表格達式數目:CUBE、ROLLUP、GROUPING SETS、WITH CUBE、WITH ROLLUP

32

32

GROUP BY 子句中的運算子產生的分組集數目

4,096

4,096

每個預存程序的參數個數

2,100

2,100

每個使用者定義函數的參數個數

2,100

2,100

每個資料表的 REFERENCE 個數

253

253

每個資料表的行數

受可用儲存空間限制

受可用儲存空間限制

每個資料庫的表數3

受資料庫中對象數限制

受資料庫中對象數限制

每個分區表或索引的分區數

1,000

1,000

非索引列的統計資訊條數

30,000

30,000

每個 SELECT 語句的表個數

僅受可用資源限制

僅受可用資源限制

每個表的觸發器個數3

受資料庫中對象數限制

受資料庫中對象數限制

每個 UPDATE 語句(寬表)的列數

4096

4096

使用者串連

32,767

32,767

XML 索引

249

249

 

從表中可以看到,每個表的行數是受可用空間限制。而可用空間對於整個資料庫達到,524,272 TB。這是非常大的。不過值得注意的是,

對於單個資料檔案的大小限制是16TB。

而對於列數,非寬表的最大列數是1024.對於關係型資料庫這個值也非常大了,很難想象,你的列數超過這個值。

而表中的其他項目就不一一贅述了。需要的時候可以比對看看。

 

引用

 

官網的地址:https://technet.microsoft.com/zh-cn/library/ms143432(v=sql.100)

 

註:此文章為原創,歡迎轉載,請在文章頁面明顯位置給出此文連結!
若您覺得這篇文章還不錯請點擊下右下角的推薦,非常感謝!

SQL SERVER工作日誌--我的資料庫會裝滿嗎?

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.