如何维护innodb系统表空间?

如何维护innodb系统表空间?

环境说明:

有一个在运行中的mysql环境,由于之前的配置文件设置的过于简单(没有配置innodb_data_file_path变更);造成现在系统表空间已经满了

如果innodb_data_file_path之前没有设置那么它会采用默认值:innodb_data_file_path=ibdata1:12M;问题就是出在了这里它没有设置

autoextend

解决思路:

1、关闭已经在运行中的mysql

mysqladmin -h127.0.0.1 -uroot -pxxxx shutdown

2、为mysql增加第二个系统表空间文件,设置它的大小并且加上autoextend属性

[mysqld]
innodb_data_file_path   = ibdata1:12M;ibdata2:12M:autoextend

3、重启mysql

service mysqld start

写到这里也顺便说一下如果是想要缩小系统表空间也是可以的,总的来说就是要从做一个了;

大致步骤如下

1、用mysqldump备份你的数据库

2、关闭你的mysql数据库并删除datadir下的的有文件

3、编辑配置文件到你想要的配置并重新初始一个新的mysql数据库

4、从第一步的dump文件中还原数据库

以上这篇innodb系统表空间维护方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持路饭。