Mysql innodb系统表空间的大小调整

增加InnoDB系统表空间大小

增加InnoDB系统空间最简单的方法就是,在配置文件中配置autoextend
每次自动扩展的增量大小由参数 innodb_autoextend_increment 控制,单位为’M’。
Mysql innodb系统表空间的大小调整_第1张图片
或者在配置文件中
innodb_data_file_path = ibdata1:12;ibdata2:12M:autoextend

缩小系统表空间

场景:由原来的系统表空间转换成了独立表表空间,数据和索引都迁移出了ibdata,但是原来有的比如500G的数据大小的文件他不会自动的缩小 ,现在我们来给他缩小。

缩小系统表空间呢,分为以下几个步骤
1 ----导出所有的数据
mysqldump --all-databases --flush-privileges --quick --routines --triggers -uroot -p’Chenzhike123$%^’ >all-db.sql

2---- 查询左右的innodb的表
elect table_name g_name from information_schema.tables where table_schema=‘mysql’ and engine=‘innodb’;

3.------关闭MySQL
4-----删除所有现有的表空间文件( .ibd),包括ibdata和ib_log文件. 不要忘记删除位于MySQL数据库中的表的 .ibd文件.**
find . -name “*.idb” -exec rm -rf {} ;

5----删除InnoDB表的任何.frm文件.
cd mysql中删除.frm文件

6.配置新的表空间.
将独立表空间的值缩小
7.重启MySQL
8.导入dump文件

你可能感兴趣的:(mysql,linux)