MySQL使用InnoDB引擎的时候,ibdata1这个文件会随着时间的增长,会变得越来越大,占据大量的磁盘空间。

那么,ibdata1里保存了哪些东西,为什么会变得越来越大呢,让我们开看看ibdata1的构造。

ibdata1是InnoDB的共有表空间,默认情况下会把表空间存放在一个文件ibdata1中,会造成这个文件越来越大。

发现问题所在之后,解决方法就是,使用独享表空间,将表空间分别单独存放。MySQL开启独享表空间的参数是Innodb_file_per_table,会为每个Innodb表创建一个.ibd的文件。

操作步骤

下面讲一下具体的操作。

1) 导出数据库中所有数据

# mysqldump -u root -p --all-database > /tmp/all-database.dump

2) 删除数据库中数据

# mysql -u root -p
mysql> drop database dbname;

3) 停止MySQL

# /etc/init.d/mysqld stop

4) 删除ibdata1文件(移动到/tmp下)

# mv /var/lib/mysql/ibdata1 /tmp
# mv /var/lib/mysql/ib_logfile0 /tmp
# mv /var/lib/mysql/ib_logfile1 /tmp

5) my.cnf设定

# vi /etc/my.cnf
开启独享表空间,并指定ibdata1大小为1G,ibdata2大小200M,自动扩张。
innodb_data_home_dir = /var/lib/mysql
innodb_data_file_path = ibdata1:1G;ibdata2:200M:autoextend
innodb_file_per_table

6) 启动MySQL

# /etc/init.d/mysqld start

7) 导入数据

# mysql -u root -p < /tmp/all-database.dump

8) 确认

后记

开启独享表空间后,并不是说就不需要ibdata1了,因为在ibdata1中还保存着下面这些数据。

  • InnoDB表的元数据

  • Buffer

  • UNDO日志

转载于:https://blog.51cto.com/hdl993101/1975615

ibdata1是什么?相关推荐

  1. mysql data ibdata1_database - 如何在MySQL中收缩/清除ibdata1文件

    database - 如何在MySQL中收缩/清除ibdata1文件 我在localhost中使用MySQL作为在R中执行统计的"查询工具",也就是说,每次运行R脚本时,我创建一个 ...

  2. mysql ibdata作用_mysql data文件夹下ibdata1 文件作用

    ibdata1这个文件超级大, 查了一下, 大概的作用如下 是储存的格式 INNODB类型数据状态下, ibdata用来储存文件的数据 而库名的文件夹里面的那些表文件只是结构而已 由于mysql4.1 ...

  3. [已解决] InnoDB: preallocating bytes for file ./ibdata1 failed with error

    Docker 中的 Alpine 初始化数据库 docker exec cmdb3 mysql_install_db --user=root 复制代码 时报错 : 2018-07-21 14:00:2 ...

  4. mysql data文件夹下的ibdata1 文件作用

    这个文件超级大, 查了一下, 大概的作用如下 是储存的格式 INNODB类型数据状态下, ibdata用来储存文件的数据 而库名的文件夹里面的那些表文件只是结构而已 由于mysql4.1默认试inno ...

  5. mysql里的ibdata1文件

    mysql大多数磁盘空间被 InnoDB 的共享表空间 ibdata1 使用.而你已经启用了 innodb_file_per_table,所以问题是: ibdata1存了什么? 当你启用了innodb ...

  6. 收缩Mysql的ibdata1文件大小方法

    收缩Mysql的ibdata1文件大小方法 http://www.cnblogs.com/alibai/p/3650416.html bdata1是mysql数据库中一个数据文件了,你会发现它来越大了 ...

  7. MYSQL [ERROR] InnoDB: Unable to lock ./ibdata1 error: 11

    1:重启 [root@iZuf63x5aylgn2n11k2sllZ etc]# systemctl restart mysql Job for mysql.service failed becaus ...

  8. 释放mysql ibdata1文件_释放MySQL ibdata1文件的空间

    在MySQL数据库中,如果不指定innodb_file_per_table参数,单独存在每个表的数据,MySQL的数据都会存放在ibdata1文件. mysql ibdata1存放数据,索引等,是MY ...

  9. mysql中ibdata1过大的问题

    ibdata1文件是什么? 答: ibdata1是一个用来构建innodb系统表空间的文件,这个文件包含了innodb表的元数据.撤销记录.修改buffer和双写buffer.如果file-per-t ...

  10. mysql 5.6 ibdata1_mysql 里的 ibdata1 文件不断的增长?

    我们在 Percona 支持栏目经常收到关于 MySQL 的 ibdata1 文件的这个问题.当监控服务器发送一个关于 MySQL 服务器存储的报警时,恐慌就开始了 -- 就是说磁盘快要满了.一番调查 ...

最新文章

  1. yield学习续:yield return迭代块在Unity3D中的应用——协程
  2. ASP.NET Core的Kestrel服务器
  3. linux内核 current当前进程指针 task_struct结构介绍
  4. NFS Volume Provider(Part I) - 每天5分钟玩转 OpenStack(62
  5. [Jobdu] 题目1530:最长不重复子串
  6. SQL server挂了之后
  7. 从面试题看考察知识点(四)
  8. Java描述设计模式(01):单例模式
  9. Razor 将C#对象转换成Javascript对象, json还原被转码的字符 ·· HTML转义符
  10. Oracle用户及角色的权限管理[Oracle基础]
  11. ad09只在一定范围内查找相似对象_AD16中filter查找相似对象list inspector四大编辑指令使用方法...
  12. 小米路由器4a千兆版修改sn和关闭电源led灯
  13. SAP中部分凭证状态导致的审计序时账和科目余额不平——会计凭证中的注释项目
  14. 如何认识宇宙场存在的六种基本作用力
  15. CC00047.bdpositions——|Hadoop实时数仓.V27|——|项目.v27|需求三:数据处理增量统计广告.V1|——|需求分析|
  16. ZYNQ 千兆以太网 学习
  17. 关于ruoyi验证码无法显示的问题
  18. L1正则化及其稀疏性的傻瓜解释
  19. 【课程设计】僵尸大战植物 Zombies vs.Plants
  20. python数据分析-概率论与数理统计基础

热门文章

  1. POJ3107Godfather找重心
  2. 我的电子相册网页HTML案例
  3. infiniband学习总结
  4. 题目:L1-079 天梯赛的善良
  5. 【超分辨率】VDSR--Accurate Image Super-Resolution Using Very Deep Convolutional Networks
  6. 智能制造数字化工厂的关键技术特点
  7. 如何将STP文件转换为CAD文件
  8. Vue ElementUI 实现 Table 多列数据 checkBox选择框
  9. Java27岁了--我与Java6年
  10. js前台与后台数据交互-前台调后台