【昊鼎王五】mysql 表文件,表空间压缩
前言:
我的mySQL使用一段时间后,表空间已变得很大(软件有较多的删除增加操作),现在我想把占用的磁盘空间减少,请教如何操作?
先查询
SELECT
TABLE_NAME, (DATA_LENGTH+INDEX_LENGTH)/1048576 AS size_Mb, TABLE_ROWS FROM information_schema.tables
WHERE
TABLE_SCHEMA='$db-name'
AND
TABLE_NAME='$table-name';
再执行压缩优化:
>user database;
>OPTIMIZE table tb_name;
查询扩展:
查询 表空间占用情况 命令:
select concat(truncate(sum(data_length)/1024/1024,2),'MB') as data_size,
concat(truncate(sum(max_data_length)/1024/1024,2),'MB') as max_data_size,
concat(truncate(sum(data_free)/1024/1024,2),'MB') as data_free,
concat(truncate(sum(index_length)/1024/1024,2),'MB') as index_size
from information_schema.tables where TABLE_NAME = 't_tb_item';
好了,聪明如你,就讲到这里吧,有问题的话可以留言。