文章目录
[隐藏]
增大InnoDB system tablespace
缩小InnoDB system tablespace
增大InnoDB system tablespace
最简单的增大InnoDB system tablespace大小的方法是在一开始配置的时候就指定为自动扩展. 为innodb_data_file_path参数中的最后一个数据文件指定autoextend选项. InnoDB在空间不足时以64MB为单位自动增加该文件的大小. 可以通过设置innodb_autoextend_increment系统变量的值(以兆字节为单位)来更改增量大小.
您可以通过添加另一个数据文件来扩展系统表空间:
1.关闭MySQL
2.如果上一个数据文件是使用关键字autoextend定义的,则根据实际增长的大小将其定义更改为使用固定大小. 检查数据文件的大小,将其舍入到1024×1024字节(= 1MB)的最接近的倍数,并在innodb_data_file_path中显式指定舍入后的大小.
3.将新的数据文件添加到innodb_data_file_path的末尾,可以指定该文件为自动扩展. 注意,只能将innodb_data_file_path中的最后一个数据文件指定为自动扩展.
4.启动MySQL
实际例子:
初始只有一个ibdata1,现在我们想增加一个数据文件
innodb_data_home_dir = innodb_data_file_path = /ibdata/ibdata1:10M:autoextend
假设ibdata1此时已经增长到988M,那么修改配置为
innodb_data_home_dir = innodb_data_file_path = /ibdata/ibdata1:988M;/disk2/ibdata2:50M:autoextend