ibdata1是mysql使用InnoDB引擎的时候需要使用的文件。这个文件有的时候会变得很大,并且在你删除数据的时候,文件也不减小。
下面是处理超大ibddata1文件的步骤:
1. 对每张表使用单独的innoDB文件, 修改/etc/my.cnf文件,windows下是my.ini文件
-
#Set Innodb isolated tablespace
-
innodb_file_per_table=1
目的很明确,我们可以单独删除每个文件
2. 导出所有的数据,重建数据库,然后恢复数据:
-
# /usr/bin/mysqldump -R -q --all-databases > /temp/all.sql
-
# service mysqld stop
-
# rm -fr /var/lib/mysql/*
-
# /usr/bin/mysql_install_db
-
# service mysqld restart
-
# mysql < /tmp/all.sql
3. /var/lib/mysql的每个数据库下面,都有会很多的.ibd文件。这些分散的.ibd文件取代了原来的那个ibddata1。
以后删除数据库的时候,直接删除某个数据库的目录就可以了。
阅读(5268) | 评论(0) | 转发(0) |