最近几天做测试,向表中插入了几十万的数据,删除这些数据后数据库ibdata1仍然有几百兆,怎样压缩空间变回原先的大小?

解决方案 »

  1.   

    如下操作步骤,但不建议, 否则每次数据增长时,MYSQL还要另外申请磁盘空间,不如一次建个大的。 - 1. 用mysqldump等工具导出数据
    - 2. 停止 mysqld
    - 3. 删除ibdata*, ib_logfile* 文件
    - 4. 重新启动 mysqld(这时mysqld就会自动创建 idbdata*, ib_logfile* 文件)
    - 5. 将到出来的数据导回去,体积才会减小。
      

  2.   

    呵呵,似乎只有删除再建立的方法了
    idbdata 数据文件超级大
    1. 用mysqldump等工具导出数据
    2. 停止 mysqld
    3. 删除ibdata*, ib_logfile* 文件
    4. 重新启动 mysqld(这时mysqld就会自动创建 idbdata*, ib_logfile* 文件)
    5. 将到出来的数据导回去,体积才会减小。