mysql中表的大小
Posted
技术标签:
【中文标题】mysql中表的大小【英文标题】:Size of a table in mysql 【发布时间】:2021-01-05 04:25:35 【问题描述】:我有一张桌子:
create table a(a1 int, a2 char(10),a3 float);
我可以手动计算为该表分配的字节数 a。但是,如何通过一些查询在 mysql 中找到它的大小???
【问题讨论】:
我手动计算了分配给这个表 a 的字节数。真的吗? 是的,它是 4+4+10。 18 字节 您是否在查找表 a 占用的总空间? chartio.com/resources/tutorials/… 是的,它是 4+4+10。 18 字节 首先,这是错误的。您没有考虑很多字节 - 至少可以为空字节和内部行号字节。其次,行的大小与分配给表的字节数非常接近。第三,索引也需要空间。等等…… 【参考方案1】:如果您正在寻找表 a
的物理表大小
SELECT
TABLE_NAME AS `Table`,
ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024) AS `Size (MB)`
FROM
information_schema.TABLES
WHERE
TABLE_SCHEMA = '<schema>'
AND
TABLE_NAME = 'a'
ORDER BY
(DATA_LENGTH + INDEX_LENGTH)
DESC;
【讨论】:
SELECT a AS `Table`, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024) AS `Size (MB)` FROM information_schema.TABLES WHERE TABLE_SCHEMA = "<schema>" AND TABLE_NAME = "a" ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC; ERROR 1054 (42S22): Unknown column 'a' in 'field list'
请问这个错误的原因。
哥们,我也有这个疑问。我检查了你的编辑。它显示empty set
。该怎么办???有什么帮助吗??
这没有意义。注释 --TABLE_SCHEMA 部分并将 TABLE_NAME 部分从相等运算符更改为类似运算符,以便您可以进行更广泛的搜索ç以上是关于mysql中表的大小的主要内容,如果未能解决你的问题,请参考以下文章