Hướng dẫn mysql database size limit - giới hạn kích thước cơ sở dữ liệu mysql

Kích thước bảng tối đa hiệu quả cho cơ sở dữ liệu MySQL thường được xác định bởi các ràng buộc hệ điều hành trên các kích thước tệp, không phải bởi các giới hạn nội bộ của MySQL. Để biết giới hạn kích thước tệp hệ điều hành thông tin cập nhật, hãy tham khảo tài liệu cụ thể cho hệ điều hành của bạn.

Người dùng Windows, xin lưu ý rằng FAT và VFAT (FAT32) không được coi là phù hợp để sử dụng sản xuất với MySQL. Sử dụng NTFS thay thế.not considered suitable for production use with MySQL. Use NTFS instead.

Nếu bạn gặp phải một lỗi toàn bàn, có một số lý do tại sao nó có thể xảy ra:

  • Các đĩa có thể đầy.

  • Bạn đang sử dụng các bảng InnoDB và đã hết phòng trong tệp không gian bảng InnoDB. Kích thước bảng tối đa cũng là kích thước tối đa cho một bảng. Đối với giới hạn kích thước bảng không gian, xem giới hạn innodb.

    Nói chung, việc phân vùng các bảng thành nhiều tệp bảng không gian được khuyến nghị cho các bảng lớn hơn kích thước 1TB.

  • Bạn đã nhấn một giới hạn kích thước tệp hệ điều hành. Ví dụ: bạn đang sử dụng các bảng MyISAM trên hệ điều hành hỗ trợ các tệp chỉ có kích thước lên tới 2GB và bạn đã đạt giới hạn này cho tệp dữ liệu hoặc tệp chỉ mục.

  • Bạn đang sử dụng bảng MyISAM và không gian cần thiết cho bảng vượt quá những gì được cho phép bởi kích thước con trỏ bên trong. MyISAM cho phép các tệp dữ liệu và chỉ mục tăng lên tới 256TB theo mặc định, nhưng giới hạn này có thể được thay đổi lên đến kích thước tối đa cho phép là 65,536TB (2567 - 1 byte).

    Nếu bạn cần bảng MyISAM lớn hơn giới hạn mặc định và hệ điều hành của bạn hỗ trợ các tệp lớn, câu lệnh CREATE TABLE sẽ hỗ trợ các tùy chọn AVG_ROW_LENGTH

    SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
    0. Xem Tạo câu lệnh bảng. Máy chủ sử dụng các tùy chọn này để xác định mức độ lớn của bảng để cho phép.

    Nếu kích thước con trỏ quá nhỏ đối với một bảng hiện có, bạn có thể thay đổi các tùy chọn với

    SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
    1 để tăng kích thước cho phép tối đa của bảng. Xem Tuyên bố bảng thay đổi.

    ALTER TABLE tbl_name MAX_ROWS=1000000000 AVG_ROW_LENGTH=nnn;

    Bạn phải chỉ định AVG_ROW_LENGTH chỉ cho các bảng có cột

    SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
    3 hoặc
    SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
    4; Trong trường hợp này, MySQL không thể tối ưu hóa không gian cần thiết chỉ dựa trên số lượng hàng.

    Để thay đổi giới hạn kích thước mặc định cho các bảng MyISAM, hãy đặt

    SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
    6, đặt số lượng byte được sử dụng cho các con trỏ hàng bên trong. Giá trị được sử dụng để đặt kích thước con trỏ cho các bảng mới nếu bạn không chỉ định tùy chọn
    SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
    0. Giá trị của
    SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
    6 có thể là từ 2 đến 7. Ví dụ: đối với các bảng sử dụng định dạng lưu trữ động, giá trị 4 cho phép các bảng lên đến 4GB; Giá trị 6 cho phép bảng lên tới 256TB. Các bảng sử dụng định dạng lưu trữ cố định có độ dài dữ liệu tối đa lớn hơn. Để biết các đặc điểm định dạng lưu trữ, xem các định dạng lưu trữ bảng Myisam.

    Bạn có thể kiểm tra kích thước dữ liệu và chỉ mục tối đa bằng cách sử dụng câu lệnh này:

    SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';

    Bạn cũng có thể sử dụng myisamchk -DV/path/to/bảng-index-file. Xem các tuyên bố hiển thị, hoặc Myisamchk-Tiện ích bảo trì bảng Myisam.myisamchk -dv /path/to/table-index-file. See SHOW Statements, or myisamchk — MyISAM Table-Maintenance Utility.

    Các cách khác để làm việc xung quanh các giới hạn kích thước tệp cho các bảng MyISAM như sau:

    • Nếu bảng lớn của bạn chỉ được đọc, bạn có thể sử dụng Myisampack để nén nó. Myisampack thường nén một bảng ít nhất 50%, do đó bạn có thể có các bảng lớn hơn nhiều. Myisampack cũng có thể hợp nhất nhiều bảng vào một bảng. Xem Myisampack-Tạo các bảng Myisam được nén, chỉ đọc.myisampack to compress it. myisampack usually compresses a table by at least 50%, so you can have, in effect, much bigger tables. myisampack also can merge multiple tables into a single table. See myisampack — Generate Compressed, Read-Only MyISAM Tables.

    • MySQL bao gồm thư viện InnoDB0 cho phép bạn xử lý bộ sưu tập các bảng MyISAM có cấu trúc giống hệt nhau như một bảng InnoDB0. Xem động cơ lưu trữ hợp nhất.

  • Bạn đang sử dụng công cụ lưu trữ InnoDB3 (InnoDB4); Trong trường hợp này, bạn cần tăng giá trị của biến hệ thống InnoDB5. Xem các biến hệ thống máy chủ.


8.4.5 & nbsp; giới hạn số lượng cơ sở dữ liệu và bảng

MySQL không có giới hạn về số lượng cơ sở dữ liệu. Hệ thống tệp cơ bản có thể có giới hạn về số lượng thư mục.

MySQL không có giới hạn về số lượng bảng. Hệ thống tệp cơ bản có thể có giới hạn về số lượng tệp đại diện cho các bảng. Động cơ lưu trữ cá nhân có thể áp đặt các ràng buộc cụ thể của động cơ. InnoDB cho phép lên đến 4 tỷ bảng.


  • Yêu cầu lưu trữ bảng Innodb

  • Yêu cầu lưu trữ bảng NDB

  • Yêu cầu lưu trữ loại số

  • Yêu cầu lưu trữ ngày và loại thời gian

  • Yêu cầu lưu trữ loại chuỗi

  • Yêu cầu lưu trữ loại không gian

  • Yêu cầu lưu trữ JSON

Nói chung, yêu cầu lưu trữ cho cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
67 xấp xỉ bằng cột
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
21 hoặc
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
22; Đó là, không gian được tiêu thụ bởi một tài liệu JSON gần giống với biểu diễn chuỗi của tài liệu được lưu trữ trong một cột của một trong các loại này. Tuy nhiên, có một chi phí được áp đặt bởi mã hóa nhị phân, bao gồm siêu dữ liệu và từ điển cần thiết để tra cứu, của các giá trị riêng lẻ được lưu trữ trong tài liệu JSON. Ví dụ, một chuỗi được lưu trữ trong tài liệu JSON yêu cầu lưu trữ bổ sung 4 đến 10 byte, tùy thuộc vào độ dài của chuỗi và kích thước của đối tượng hoặc mảng mà nó được lưu trữ.

Ngoài ra, MySQL áp đặt giới hạn về kích thước của bất kỳ tài liệu JSON nào được lưu trữ trong cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
67 sao cho nó không thể lớn hơn giá trị của
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
96.

Yêu cầu lưu trữ bảng Innodb

Yêu cầu lưu trữ bảng NDB

Yêu cầu lưu trữ bảng NDB

Yêu cầu lưu trữ loại số

Yêu cầu lưu trữ ngày và loại thời gian4-byte alignment; all InnoDB1 data storage is done in multiples of 4 bytes. Thus, a column value that would typically take 15 bytes requires 16 bytes in an InnoDB1 table. For example, in InnoDB1 tables, the InnoDB5, InnoDB6, InnoDB7, and InnoDB8 (InnoDB9) column types each require 4 bytes storage per record due to the alignment factor.

Yêu cầu lưu trữ loại chuỗinot 4-byte aligned, InnoDB1 reserves 4 bytes (32 bits) per row for the first 1-32 bits needed for MyISAM2 columns, then another 4 bytes for bits 33-64, and so on.

Mặc dù bản thân một MyISAM5 không yêu cầu bất kỳ không gian lưu trữ nào, InnoDB1 dự trữ 4 byte mỗi hàng nếu định nghĩa bảng chứa bất kỳ cột nào cho phép MyISAM5, tối đa 32 cột. .

Mỗi bảng sử dụng công cụ lưu trữ InnoDB1 yêu cầu khóa chính; Nếu bạn không định nghĩa một khóa chính, một khóa chính ẩn của Google được tạo bởi InnoDB1. Khóa chính ẩn này tiêu thụ 31-35 byte cho mỗi bản ghi bảng.hidden primary key is created by InnoDB1. This hidden primary key consumes 31-35 bytes per table record.

Bạn có thể sử dụng tập lệnh ndb_size.pl perl để ước tính các yêu cầu lưu trữ InnoDB1. Nó kết nối với cơ sở dữ liệu MySQL (không phải cụm NDB) hiện tại và tạo báo cáo về lượng không gian mà cơ sở dữ liệu sẽ yêu cầu nếu sử dụng công cụ lưu trữ InnoDB1. Xem Phần & NBSP; 23.5.28, ND NDB_SIZE.PL - Công cụ ước tính yêu cầu kích thước NDBCluster để biết thêm thông tin.ndb_size.pl Perl script to estimate InnoDB1 storage requirements. It connects to a current MySQL (not NDB Cluster) database and creates a report on how much space that database would require if it used the InnoDB1 storage engine. See Section 23.5.28, “ndb_size.pl — NDBCLUSTER Size Requirement Estimator” for more information.

Yêu cầu lưu trữ loại số

Loại dữ liệuCần lưu trữ
InnoDB51 byte
InnoDB62 byte
InnoDB73 byte
InnoDB9, InnoDB84 byte
MyISAM08 byte
MyISAM1)4 byte nếu 0
MyISAM44 byte
MyISAM08 byte
MyISAM1), NUMERIC(MyISAM1,MyISAM8) 4 byte nếu 0
MyISAM4MyISAM5, MyISAM6

Thập phân (____ 41, ________ 68), số (________ 41, ________ 68)leftover digits require some fraction of four bytes. The storage required for excess digits is given by the following table.

Thay đổi; Xem cuộc thảo luận sauMyISAM0)
0 0
1 1
2 1
3 2
4 2
5 3
6 3
7 4
8 4

xấp xỉ (____ 41+7)/8 byte

Các giá trị cho các cột MyISAM3 (và MyISAM4) được biểu diễn bằng định dạng nhị phân gói chín chữ số thập phân (cơ sở 10) thành bốn byte. Lưu trữ cho các phần số nguyên và phân số của mỗi giá trị được xác định riêng. Mỗi bội số của chín chữ số yêu cầu bốn byte và các chữ số còn sót lại của người dùng yêu cầu một số phần của bốn byte. Bộ lưu trữ cần thiết cho các chữ số dư thừa được đưa ra bởi bảng sau.

Loại dữ liệuCần lưu trữInnoDB5
MyISAM81 byte1 byte
MyISAM93 byte3 byte
MyISAM53 byteInnoDB9, InnoDB8
MyISAM68 byteMyISAM1)
MyISAM74 byteMyISAM0

8 byte

MyISAM1)Cần lưu trữ
0 InnoDB5
1 byte1 byte
InnoDB62 byte
InnoDB73 byte

InnoDB9, InnoDB8

4 byte

MyISAM0

8 byte

Loại dữ liệuCần lưu trữ
CHAR(MyISAM1) MyISAM1)<= MyISAM1 <= 255, where AVG_ROW_LENGTH9 is the number of bytes required for the maximum-length character in the character set.
BINARY(MyISAM1) 4 byte nếu 0<= MyISAM1 <= 255
MyISAM4, VARBINARY(MyISAM1) MyISAM5, MyISAM6
Thập phân (____ 41, ________ 68), số (________ 41, ________ 68)Thay đổi; Xem cuộc thảo luận sau
MyISAM0)xấp xỉ (____ 41+7)/8 byte
Các giá trị cho các cột MyISAM3 (và MyISAM4) được biểu diễn bằng định dạng nhị phân gói chín chữ số thập phân (cơ sở 10) thành bốn byte. Lưu trữ cho các phần số nguyên và phân số của mỗi giá trị được xác định riêng. Mỗi bội số của chín chữ số yêu cầu bốn byte và các chữ số còn sót lại của người dùng yêu cầu một số phần của bốn byte. Bộ lưu trữ cần thiết cho các chữ số dư thừa được đưa ra bởi bảng sau.Chữ số còn sót lại
Số byteYêu cầu lưu trữ ngày và loại thời gian
Đối với các cột MyISAM5, MyISAM6 và MyISAM7, bộ lưu trữ cần thiết cho các bảng được tạo trước MySQL 5.6.4 khác với các bảng được tạo từ 5.6.4 trở đi. Điều này là do sự thay đổi trong 5.6.4 cho phép các loại này có một phần phân số, yêu cầu từ 0 đến 3 byte.Yêu cầu lưu trữ trước MySQL 5.6.4
Yêu cầu lưu trữ kể từ MySQL 5.6.43 byte + lưu trữ giây phân đoạn

5 byte + lưu trữ giây phân số

Để tính toán số byte được sử dụng để lưu trữ một giá trị cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
32,
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33 hoặc
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
4 cụ thể, bạn phải tính đến bộ ký tự được sử dụng cho cột đó và liệu giá trị có chứa các ký tự multibyte hay không. Cụ thể, khi sử dụng bộ ký tự Unicode UTF-8, bạn phải nhớ rằng không phải tất cả các ký tự đều sử dụng cùng một số byte.
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
35 và
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
36 Bộ ký tự có thể yêu cầu tương ứng tối đa ba và bốn byte trên mỗi ký tự. Để biết sự cố lưu trữ được sử dụng cho các danh mục khác nhau của các ký tự
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
35 hoặc
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
36, xem Phần & NBSP; 10.9, hỗ trợ của Unicode.

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33,
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
40 và các loại
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
3 và
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
4 là các loại có độ dài thay đổi. Đối với mỗi, các yêu cầu lưu trữ phụ thuộc vào các yếu tố sau:

  • Độ dài thực của giá trị cột

  • Độ dài tối đa có thể của cột

  • Bộ ký tự được sử dụng cho cột, bởi vì một số bộ ký tự chứa các ký tự multibyte

Ví dụ: cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
43 có thể giữ một chuỗi có độ dài tối đa 255 ký tự. Giả sử rằng cột sử dụng bộ ký tự
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
44 (một byte cho mỗi ký tự), bộ lưu trữ thực tế cần thiết là độ dài của chuỗi (AVG_ROW_LENGTH6), cộng với một byte để ghi lại độ dài của chuỗi. Đối với chuỗi
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
46, AVG_ROW_LENGTH6 là 4 và yêu cầu lưu trữ là năm byte. Thay vào đó, cùng một cột được tuyên bố sử dụng bộ ký tự kép
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
48 đến 510 byte).

Số lượng byte tối đa hiệu quả có thể được lưu trữ trong cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33 hoặc
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
40 phải tuân theo kích thước hàng tối đa là 65,535 byte, được chia sẻ giữa tất cả các cột. Đối với một cột
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33 lưu trữ các ký tự multibyte, số lượng ký tự tối đa hiệu quả là ít hơn. Ví dụ:
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
36 ký tự có thể yêu cầu tối đa bốn byte trên mỗi ký tự, do đó, một cột
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33 sử dụng bộ ký tự
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
36 có thể được khai báo là tối đa 16.383 ký tự. Xem Phần & NBSP; 8.4.7, Giới hạn trên số đếm cột và kích thước hàng.bytes that can be stored in a
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33 or
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
40 column is subject to the maximum row size of 65,535 bytes, which is shared among all columns. For a
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33 column that stores multibyte characters, the effective maximum number of characters is less. For example,
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
36 characters can require up to four bytes per character, so a
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33 column that uses the
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
36 character set can be declared to be a maximum of 16,383 characters. See Section 8.4.7, “Limits on Table Column Count and Row Size”.

InnoDB mã hóa các trường có độ dài cố định lớn hơn hoặc bằng 768 byte theo chiều dài như các trường có độ dài thay đổi, có thể được lưu trữ ngoài trang. Ví dụ, cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
57 có thể vượt quá 768 byte nếu độ dài byte tối đa của bộ ký tự lớn hơn 3, vì nó là với
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
36.

Công cụ lưu trữ InnoDB1 hỗ trợ các cột có chiều rộng thay đổi. Điều này có nghĩa là cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
33 trong bảng cụm NDB yêu cầu lượng lưu trữ giống như bất kỳ công cụ lưu trữ nào khác, ngoại trừ các giá trị đó được căn chỉnh 4 byte. Do đó, chuỗi
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
46 được lưu trữ trong cột
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
62 bằng cách sử dụng bộ ký tự
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
44 yêu cầu 8 byte (thay vì 5 byte cho cùng một giá trị cột trong bảng MyISAM).

Các cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
4,
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
3 và
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
67 được triển khai khác nhau trong công cụ lưu trữ InnoDB1, trong đó mỗi hàng trong cột được tạo thành từ hai phần riêng biệt. Một trong số đó có kích thước cố định (256 byte cho
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
4 và
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
3, 4000 byte cho
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
67) và thực sự được lưu trữ trong bảng gốc. Các loại khác bao gồm bất kỳ dữ liệu nào vượt quá 256 byte, được lưu trữ trong bảng các bộ phận Blob ẩn. Kích thước của các hàng trong bảng thứ hai này được xác định bởi loại chính xác của cột, như được hiển thị trong bảng sau:

Điều này có nghĩa là kích thước của cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
4 là 256 nếu
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
73

Không có bộ phận nào được lưu trữ riêng biệt bởi InnoDB1 cho các giá trị cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
09 hoặc
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
10.

Bạn có thể tăng kích thước của phần blob của cột InnoDB1 lên tối đa 13948 bằng cách sử dụng

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
81 trong một bình luận cột khi tạo hoặc thay đổi bảng cha mẹ. Trong NDB 8.0.30 và sau đó, cũng có thể đặt kích thước nội tuyến cho cột
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
4,
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
3 hoặc
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
67, sử dụng
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
85 trong nhận xét cột. Xem các tùy chọn NDB_Column, để biết thêm thông tin.

Kích thước của một đối tượng

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
86 được xác định bởi số lượng các giá trị liệt kê khác nhau. Một byte được sử dụng để liệt kê với tối đa 255 giá trị có thể. Hai byte được sử dụng để liệt kê có từ 256 đến 65,535 giá trị có thể. Xem phần & nbsp; 11.3.5, loại Enum loại.

Kích thước của một đối tượng

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
87 được xác định bởi số lượng thành viên được đặt khác nhau. Nếu kích thước đặt là
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
88, đối tượng chiếm (____ 188+7)/8 byte, được làm tròn lên đến 1, 2, 3, 4 hoặc 8 byte. Một
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
87 có thể có tối đa 64 thành viên. Xem Phần & NBSP; 11.3.6, Loại SET loại.(
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
88+7)/8
bytes, rounded up to 1, 2, 3, 4, or 8 bytes. A
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
87 can have a maximum of 64 members. See Section 11.3.6, “The SET Type”.

Yêu cầu lưu trữ loại không gian

MySQL lưu trữ các giá trị hình học sử dụng 4 byte để chỉ ra SRID theo sau là biểu diễn WKB của giá trị. Hàm

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
91 trả về không gian trong byte cần thiết để lưu trữ giá trị.

Để biết mô tả về WKB và các định dạng lưu trữ nội bộ cho các giá trị không gian, xem Phần & NBSP; 11.4.3, các định dạng dữ liệu không gian được hỗ trợ.

Yêu cầu lưu trữ JSON

Nói chung, yêu cầu lưu trữ cho cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
67 xấp xỉ bằng cột
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
21 hoặc
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
22; Đó là, không gian được tiêu thụ bởi một tài liệu JSON gần giống với biểu diễn chuỗi của tài liệu được lưu trữ trong một cột của một trong các loại này. Tuy nhiên, có một chi phí được áp đặt bởi mã hóa nhị phân, bao gồm siêu dữ liệu và từ điển cần thiết để tra cứu, của các giá trị riêng lẻ được lưu trữ trong tài liệu JSON. Ví dụ, một chuỗi được lưu trữ trong tài liệu JSON yêu cầu lưu trữ bổ sung 4 đến 10 byte, tùy thuộc vào độ dài của chuỗi và kích thước của đối tượng hoặc mảng mà nó được lưu trữ.

Ngoài ra, MySQL áp đặt giới hạn về kích thước của bất kỳ tài liệu JSON nào được lưu trữ trong cột

SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
67 sao cho nó không thể lớn hơn giá trị của
SHOW TABLE STATUS FROM db_name LIKE 'tbl_name';
96.