Vae 东 2022-01-25 17:40 采纳率: 0%
浏览 58
已结题

MySql统计库下面所有表的数据量

SELECT
table_schema AS '数据库',
table_name AS '表名',
table_rows AS '记录数',
TRUNCATE(data_length/1024/1024, 2) AS '数据容量(MB)',
TRUNCATE(index_length/1024/1024, 2) AS '索引容量(MB)'
FROM information_schema.tables
WHERE table_schema = 'xxxs'
ORDER BY table_schema ASC, data_length DESC, index_length DESC;

这个语言返回的记录数和实际该表中的数据量.是不一致的.是什么原因呢?

  • 写回答

2条回答 默认 最新

  • DarkAthena ORACLE应用及数据库设计方案咨询师 2022-01-25 20:54
    关注

    这个表的里的数据是静态的,不是实时的,需要执行统计信息收集后才会刷新。
    统计所有表的行数所消耗的时间太长了,如果不要求精确统计,可以查你发的这个表用来快速获取相关统计信息

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月17日
  • 专家修改了标签 1月25日
  • 创建了问题 1月25日