InnoDB数据库只是标记
删除的数据并没有真正释放
磁盘空间的占用,导致越来越多的InnoDB数据库
文件。
如果你
设置innodb_file_per_table = 1
创建数据库时,InnoDB将创建一个每个表的
数据文件,然后你可以释放所有已删除的磁盘空间只通过
运行优化表
命令。
运行优化表表名称后,它将最终
报告表不
支持优化,而是重新生成+分析,但它已经成功:
-------------------------------------------------------------
如果你不设置这个
参数,要释放空间,完全释放这些被删除的数据,你需要导出数据库,删除InnoDB数据库文件,然后把它倒进。
以下是基本
步骤:
1使用mysqldump命令导出InnoDB数据库
2停止MySQL
3删除所有InnoDB数据库文件和日志
4
启动MySQL和自动重建InnoDB数据库文件和日志文件
5导入以前的备份数据库文件
----------------------------------------------
具体命令:
复制代码代码如下所示:
#备份数据库:
就证明--快--中-力-所有数据库> mysqldump.sql
#停止数据库
停止mysqld
服务 #删除这些文件
RM / usr /局部/ MySQL /无功/ ibdata1
RM / usr /局部/ MySQL /无功/ ib_logfile *
除了所有#手动删除MySQL数据库文件夹,然后
重新启动数据库
启动mysql服务
#数据还原
MySQL中-版本<< mysqldump.sql