日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

我的SQL SERVER数据库会装满吗?

發布時間:2025/3/20 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 我的SQL SERVER数据库会装满吗? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文:我的SQL SERVER數據庫會裝滿嗎?

概述

  今天有個客戶問我一個蠻有意思的問題。我使用的SQL?SERVER?2008數據庫,目前數據庫130多G,其中某個表的記錄條數就有3億1千多萬,占用了50多G。那SQL?SERVER?數據庫中的表有沒有行數和列數限制呢?會不會突然有一天,超過這個限制,我的系統就不能使用了??

?

最大容量

? ? ? SQL SERVER 是否會被裝滿,主要是在于數據庫的最大容量。包括最大行數和最大列數 以及其他。 具體內容,我們可以查看下面列表:

SQL Server 數據庫引擎對象

最大大小/數量?

每個 GROUP BY、ORDER BY 的字節數

8,060

每個索引鍵的字節數2

900

每個外鍵的字節數

900

每個主鍵的字節數

900

每行的字節數8

8,060

每個?varchar(max)、varbinary(max)、xml、text?或image?列的字節數

2^31-1

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

2^30-1

每個數據表的聚集索引數

1

GROUP BY、ORDER BY 中的列數

僅受字節數限制

GROUP BY WITH CUBE 或 WITH ROLLUP 語句中的列數或表達式數目

10

每個索引鍵的列數7

16

每個外鍵的列數

16

每個主鍵的列數

16

每個非寬表的列數

1,024

每個寬表的列數

30,000

每個 SELECT 語句的列數

4,096

每個 INSERT 語句的列數

4096

每個客戶端的連接個數

已配置連接的最大值

數據庫大小

524,272 TB

每個 SQL Server 實例的數據庫個數

32,767

每個數據庫的文件組個數

32,767

每個數據庫的文件個數

32,767

文件大小(數據)

16 TB

文件大小(日志)

2 TB

每個表的外鍵表引用數4

253

標識符長度(以字符計)

128

每臺計算機的實例數

獨立服務器上為 50 個實例。

故障轉移群集上 25 個實例。

包含 SQL 語句的字符串的長度(批大小)1

65,536 * 網絡數據包大小

每個連接的鎖數

每個服務器的最大鎖數

每個 SQL Server 實例的鎖數5

僅受內存限制

嵌套存儲過程級別數6

32

嵌套子查詢個數

32

嵌套觸發器層數

32

每個數據表的非聚集索引個數

999

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

32

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

4,096

每個存儲過程的參數個數

2,100

每個用戶定義函數的參數個數

2,100

每個數據表的 REFERENCE 個數

253

每個數據表的行數

受可用存儲空間限制

每個數據庫的表數3

受數據庫中對象數限制

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

1,000

非索引列的統計信息條數

30,000

每個 SELECT 語句的表個數

僅受可用資源限制

每個表的觸發器個數3

受數據庫中對象數限制

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

4096

用戶連接

32,767

XML 索引

249

最大行數

從表中可以看到,每個表的行數是受可用空間限制。而可用空間對于整個數據庫達到,524,272 TB。這是非常大的。不過值得注意的是,對于單個數據文件的大小限制是16TB。

自增列

剛才園子里的朋友提到了某種特殊的情況,如果表上的自增列情況呢?

create TABLE test (
id INT IDENTITY (2147483647,1),
name VARCHAR(100)
)


INSERT INTO test (name) VALUES ('Owen')
INSERT INTO test (name) VALUES ('Zeng')

?

?

果然溢出了。所以說,對于有自增列的表,表上的行數限制,跟定義的自增列的數據類型,起始值,步長都有關系。

針對這種情況可以使用bigint類型。防止超過行數限制。

?

最大列數

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

當然這個1024 只是理論值,和上面的自增列一樣還是有其他條件制約著列數的限制。請看下面的例子:

?

CREATE TABLE test(id char(4030),name char(4030),title CHAR(10))

?

?

我的表才3個列就不讓我創建了,,,這個數據庫太無情了,,,,,,

這是為什么呢? 從之前的表上我們可以看到,字節數8060.其中包括7字節的內部開銷。

所以,列數限制還和你定義的列的長度有關.

其他

?對于其他容量限制就不一一贅述了,后續如果有遇到的時候再補充。

?

引用

官方文檔:https://technet.microsoft.com/zh-cn/library/ms143432(v=sql.100)

?

總結

以上是生活随笔為你收集整理的我的SQL SERVER数据库会装满吗?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。