首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MyISAM 表突破 4GB 限制:MAX_ROWS/AVG_ROW_LENGTH 擴容、myisamchk -dv 驗證

     編輯:MySQL 資料庫相關知識

背景

MySQL 5.0 前 MyISAM 預設單表上限 4GB(32 位檔案指標)。

擴容指令


ALTER TABLE weblogentry
  MAX_ROWS=1000000000
  AVG_ROW_LENGTH=15000;
  • MAX_ROWS:預估最大行數,決定檔案指標位元寬度。
  • AVG_ROW_LENGTH:預估平均行長,配合 MAX_ROWS 計算所需檔案大小。
  • 執行後會重建資料/索引檔,耗時與表大小成正比。

驗證擴容結果


myisamchk -dv weblogentry
# 關鍵輸出:
Max datafile length: 4294967294   # 實際支援的最大 .MYD 大小
Max keyfile length: 4398046510079 # 實際支援的最大 .MYI 大小
  • 若數值 > 4GB 即生效。
  • MySQL 5.0+ 預設已支援大檔案,通常無需手動擴容。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved