如何计算 MySQL 表中行子集使用的大小(以字节(MB、GB)为单位)。 该用例是确定用户在数据库中的足迹。因此,我们的想法是选择表中属于用户的所有行,并计算这些行的大小,包括它们的索引(索引?)
我发现了这样的东西,但这只能给我整个表格的大小:
SELECT table_schema "Data Base Name", sum( data_length + index_length ) / 1024 / 1024 "Data Base Size in MB"
FROM information_schema.TABLES GROUP BY table_schema ;
我非常感谢您的回答。
最佳答案
我认为最简单的方法就是进行估算。我假设您可以计算该用户“拥有”的表中的行数,并根据该行数和总行数可以获得该用户“拥有”的行的百分比。将该百分比应用于表格的总大小,您就可以得到估计值。
如果你尝试更准确的东西,那么你不太可能在没有大量努力的情况下实现它,并且它可能会涉及对其他事情进行估计,所以我会说只是估计。如果让我这样做,我会说不可能准确,但可以做出合理的估计,这样就足够了......
关于mysql - 如何确定 MySQL 表中行子集的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20970568/