MySQL数据库truncate表以后,通过命令查询表大小,发现已经释放了,但是MySQL数据文件ibdata1一直占用空间比较大
具体步骤:
- 备份数据库: 
 mysqldump -uroot -proot –quick –force –all-databases –events > mysqldump.sql
- 停止数据库 
 service mysqld stop
- 删除这些大文件 
 rm /usr/local/mysql/var/ibdata1
 rm /usr/local/mysql/var/ib_logfile*
- 手动删除/usr/local/mysql/var/下除了Mysql之外所有数据库文件夹,然后启动数据库 
 service mysqld start
- 重新导入数据 
 mysql -uroot -proot < mysqldump.sql
参考内容:
- Mysql 查询表所占用的空间大小
SELECT TABLE_NAME,TABLE_ROWS,DATA_LENGTH/1024/1024 "DATA_LENGTH",CREATE_TIME,TABLE_COLLATION FROM INFORMATION_SCHEMA.TABLES ORDER BY TABLE_ROWS DESC;
                










