大家有没有碰到select 表可以找出数据,但是在tables显示大小为0,因为好多工具可以显示表大小,这些表都是innodb的,怎么会这样,能查询到数据 说明数据没有丢失,但是显示却是0。

解决方案 »

  1.   

    表的大小还是看他的物理文件吧,如myisam 看myi,myd. innodb 则就看他的表空间.
      

  2.   

    所有的innodb表的数据都是存在的,但是在information_schema.tables的 data_length显示的都是0
      

  3.   

    现在好多工具都可以显示表大小 例如toad heidsql,他们显示大小估计都是从information_schema.tables 读取的
      

  4.   

    你可以到 `information_schema`.`TABLES` 下的 DATA_LENGTH 就是数据大小
      

  5.   

    http://dev.mysql.com/doc/refman/5.1/en/show-table-status.html
    Data_lengthThe length of the data file.(数据文件的长度)
      

  6.   

    INNODB的表数据都放在一个统一的一系列文件中IBDATA1。不象MYISAM是单独存放。所有不会有数据文件,也就没长度。
      

  7.   


    ACMAIN_CHM
    我不赞同你说法,其实是可以找到 数据大小和索引大小的在tables里面,之所以出现table大小为哦,但是能查询到数据,是因为设置了
    innodb_force_recovery=4
      

  8.   

    为0 和innodb_force_recovery=4 没关系的吧