Mysql的innodb扩容
为了添加一个数据文件到表空间中,首先要关闭 MySQL 数据库,编辑 my.cnf 文件,确认innodb ibdata文件的实际情况和my.cnf的配置是否一致,这里有两种情况:
1.my.cnf的配置 innodb_data_file_path=ibdata1:10G;ibdata2:10G:autoextend
如果当前数据库正在使用ibdata1,或者使用ibdata2,但ibdata2没有超过10G,则对my.cnf配置直接改成: innodb_data_file_path=ibdata1:10G;ibdata2:10G;ibdata3:10G:autoextend
2.如果设置了最后一个ibdata自动扩展时,有可能最后一个ibdata的占用空间大于my.cnf的配置空间。例如: mysql@test:/data1/mysqldata/innodb/data> ls -lh -rw-rw---- 1 mysql mysql 10737418240 2010-01-26 16:34 ibdata1
-rw-rw---- 1 mysql mysql 16106127360 2010-01-26 16:34 ibdata2
这时,需要精确的计算ibdata2的大小 15360M,修改: innodb_data_file_path=ibdata1:10G;ibdata2:15360M;ibdata3:10G:autoextend
重启mysql。
注意:1、扩容前注意磁盘空间是否足够。
2、restart后关注是否生成了新的ibdata。
更多说明:
如果,最后一个文件以关键字 autoextend