dsm13698679318 2018-04-20 14:16
浏览 282

如何计算每个MariaDB表行中的实际数据大小?

Is there any techniques to calculate actual used data size per every SQL table row? Including enabled Indexes and Log records? Sum of field sizes would not be correct because some fields can be empty or data is less than field size. Target is to know, how much exactly data is used per user. Probably I can do this in handler side.

  • 写回答

1条回答 默认 最新

  • dpsx99068 2018-05-10 01:34
    关注

    With the word "exactly", I have to say "no".

    Change that to "approximately", and I say

    SHOW TABLE STATUS
    

    and look at Avg_row_length. This info is also available in information_schema.TABLES.

    But, that is just an average. And not a very accurate average at that.

    Do you care about a hundred bytes here or there? Do users own rows in a single table? What the heck is going on?

    There are some crude formulas for computing the size of Data rows and Index rows, but nothing on Log records. One of the problems is that if there is a "block split" in a BTree because someone else inserted a row, do you divvy up the new block evenly across all users? Or what?

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题