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系统表空间维护方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

您可能有感兴趣的文章
MySQL Innodb关键特性之插入缓冲(insert buffer)

mysql innodb的重要组件汇总

简单了解mysql InnoDB MyISAM相关区别

MySQLInnoDB如何保证事务特性示例详解

MySQLInnoDBrow_id边界溢出验证的方法步骤