Mysql中的單表最大記錄是多少
mysql單表最大記錄數(shù)不能超過多少
其實mysql本身并沒有對單表最大記錄數(shù)進行限制,這個數(shù)值取決于你的操作系統(tǒng)對單個文件的限制本身。
從性能角度來講,Mysql單表數(shù)據(jù)不要超過多少呢?
業(yè)界流傳是500萬行,超過500萬行就要考慮分庫分表了。
曾經(jīng)在中國互聯(lián)網(wǎng)技術(shù)圈廣為流傳著這么一個說法:Mysql單表數(shù)據(jù)量大于2000萬行,性能會明顯下降。事實上,這個傳聞最早起大概是這樣的,當年的DBA測試Mysql性能時發(fā)現(xiàn),當單表的量在2000萬行量級時,Sql操作的性能急劇下降,因此,結(jié)論由此傳到業(yè)界的其他公司。所以就在業(yè)界流傳開這么一個說法。
再后來,阿里巴巴《Java開發(fā)手冊》提出單表行數(shù)超過500萬行或者單表容量超過2GB,才推薦進行分庫分表。
那么當單表容量超過500萬行,查詢效率下降后,我們可以如何應(yīng)付呢?
有如下幾種方式(來源于真實的企業(yè)):
- 對于使用不多的表(外部依賴少,信息不重要),可以直接清除老表,數(shù)據(jù)歸檔到hbase(或類似的,大容量成本低的冷庫)
- 分庫分表
- 老表保留,舊數(shù)據(jù)歸檔(參考第一點)
mysql單表存儲數(shù)據(jù)量有上限嗎
在mysql中,每個數(shù)據(jù)庫最多可創(chuàng)建20億個表,
一個表允許定義1024列,
每行的最大長度為8092字節(jié)(不包括文本和圖像類型的長度)。
當表中定義有varchar、nvarchar或varbinary類型列時,如果向表中插入的數(shù)據(jù)行超過8092字節(jié)時將導致Transact-SQL語句失敗,并產(chǎn)生錯誤信息。
SQL Server對每個表中行的數(shù)量沒有直接限制,但它受數(shù)據(jù)庫存儲空間的限制。
每個數(shù)據(jù)庫的最大空間1048516TB,所以一個表可用的最大空間為1048516TB減去數(shù)據(jù)庫類系屬統(tǒng)表和其它數(shù)據(jù)庫對象所占用的空間。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL數(shù)據(jù)庫如何開啟遠程連接(多備份)
多備份服務(wù)器在備份你的數(shù)據(jù)庫時,必須能夠遠程連接上你的數(shù)據(jù)庫。但是一般來說mysql安裝時都是關(guān)閉遠程連接的,因此,需要你開通mysql數(shù)據(jù)庫的遠程訪問權(quán)限。那么如何開啟呢2015-01-01MySql狀態(tài)查看方法 MySql如何查看連接數(shù)和狀態(tài)?
如果是root帳號,你能看到所有用戶的當前連接。如果是其它普通帳號,只能看到自己占用的連接2012-11-11Mysql中l(wèi)eft join、right join和inner join(join)的區(qū)
本文介紹了leftjoin、rightjoin和innerjoin的區(qū)別和使用場景,以圖文形式輔以實例講解,幫助讀者清晰理解三種SQL連接查詢的特點和應(yīng)用2024-10-10詳解MySQL?substring()?字符串截取函數(shù)
MySQL 查詢數(shù)據(jù)有時候需要對數(shù)據(jù)項進行日期格式化或截取特定部分的操作,當需要對字符串進行截取加工時用到了 substring() 函數(shù),這篇文章主要介紹了MySQL?substring()?字符串截取函數(shù),需要的朋友可以參考下2022-07-07