嗨,我想知道不同存儲引擎允許的每列最大列數和最大行大小。我搜索了mariadb網站文檔並找不到信息。謝謝對於mariadb,每個表的最大列數是多少
回答
MariaDb原本是一個叉式替代MySQL,大部分遵循與MySQL類似的設計約束。儘管MariaDB文檔沒有明確說明允許有多少列。
該數字高度依賴於許多因素,包括使用的存儲引擎和列結構的方式。對於InnoDB,這是1,000。下面從官方文檔
見的解釋(參考文獻:Column Count Limit)
有每桌4096列的硬性限制,但有效 最大可能不太給定的表。確切的限制取決於幾個相互作用的因素。
每個表(不管存儲引擎)的最大行大小爲 65,535字節。存儲引擎可能會限制此限制,從而減少有效的最大行大小。
最大行大小約束 列的數量(以及可能的大小),因爲所有列的總長度不能超過此大小的 大小。
...
個人存儲引擎可能會強加額外的限制是 限制表列數。
InnoDB permits up to 1000 columns.
這適用於MariaDB的以及
MariaDB的目前的形式仍然是足夠接近的MySQL,相同的限制適用。隨着時間的推移,MariaDB分支可能會進一步分化。
由於數據類型,存儲引擎和元數據存儲方面的差異,MySQL中每個表的最大列數的實際答案很複雜。對不起,這不僅僅是一個簡單的答案。
作爲@Manquer引用,每行有64KB的絕對限制,但BLOB/TEXT列不計入此限制。
InnoDB頁面每頁必須至少包含兩行,一頁是16KB減一些標題信息。所以無論列的數量如何,該行必須大約爲8000字節。但VARCHAR/BLOB/TEXT列可以以有趣的方式溢出到其他頁面。詳情請參閱http://www.mysqlperformanceblog.com/2010/02/09/blob-storage-in-innodb/。
但是,基於適用於所有存儲引擎的.FRM元數據文件,還有更多限制。它變得非常複雜,閱讀http://www.mysqlperformanceblog.com/2013/04/08/understanding-the-maximum-number-of-columns-in-a-mysql-table/的細節和例子。這裏有太多要複製的東西。
鑑於後者的博客文章,我能夠設計一個59列失敗的表。
- 1. MariaDB中表連接的最大數量是多少?
- 2. MemSQL的最大列數是多少?
- 3. 每個jar的最大文件數是多少?
- 4. 表中允許的最大列數是多少?
- 5. Java中的數組列表的情況。列表的最大容量是多少
- 6. 對於每個交叉表列,突出顯示最大值
- 7. Azure Sql數據倉庫表記錄的最大列數和大小是多少?
- 8. Informix列的最大長度是多少?可以增加多少?
- 9. UNNotificationActions的最大數量是多少?
- 10. lucene分數的最大值是多少?
- 11. 每種情況下的最大文件大小是多少?
- 12. 對於CNTK序列的序列模型,每秒採樣數是多少?
- 13. 最大長度是多少?
- 14. 多少不同的序列,每相鄰的兩個數字之差大於1
- 15. [R骨料最大時的參數是基於多個列
- 16. 傳遞給cassandra列的數據的最大長度是多少
- 17. 使用varchar設置的列的最大行數是多少
- 18. 每個Amazon EC2實例的最大連接卷數量是多少?
- 19. 對於每個組找到若干列的最大值觀測
- 20. MSMQ可以支持的最大隊列數是多少?
- 21. node.js中每個文件的最佳代碼行數是多少?
- 22. 小人電腦每個單詞的最小位數是多少?
- 23. mysql - 對於每個MODEL數據庫中有多少個PIECES?
- 24. MariaDB的10.1簡單的選擇多少秒大型數據庫
- 25. - 建議的最大對象大小應該是多少?
- 26. Java中String對象的最大大小是多少?
- 27. 最大n每組多表
- 28. Cassandra - 表的最大合理數量是多少?
- 29. 列表中的最大數小於數
- 30. c#中的列表<string>的最大數據限制是多少?