MySQL的Bug之一:InnoDB ibdata1 never shrinks after data is removed

问题描述

当innodb引擎使用单个文件进行存储的时候,当对数据库中数据进行删除的时候,文件的大小并不会发生变化,意味着文件将会越来越大并且即使删除也没办法 让其释放磁盘的空间。

验证过程

创建一个测试使用的表,如下创建好t这样的一个表。

创建简单的存储过程来批量的插入数据。

查看开始前的文件的大小

当批量插入接近十万的数据后

然后进行删除操作

占用磁盘空间并未减少

解决方案

两种方式:

1. 先备份后删除然后进行导入

mysqldump -uxxx -pxxx --all-databases > db.sql

service mysql stop

rm ibdata

rm ×log文件

service mysql start

mysql -uxxx -pxxx < db.sql

2. 把表设置为单表存储的形式,这样每个表中的数据单独存储,在删除数据的时候,会随着数据的删除而释放存储空间。

set global innodb_file_per_table = on

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

您可能感兴趣的文章:mysql 精简过程(删除一些文件)

linux下mysql自动备份数据库与自动删除临时文件

mysql备份脚本以及删除前5天的备份文件

php上传文件并存储到mysql数据库的方法

MySQL 删除数据库中重复数据方法小结

MYSQL删除表中的指定ID数据

MySQL数据库中删除重复记录的方法总结[推荐]

Mysql InnoDB删除数据后释放磁盘空间的方法

mysql删除数据不会减少存储占用_Mysql单文件存储删除数据文件容量不会减少的bug与解决方法...相关推荐

  1. mysql有那么多存储引擎_MySQL的多存储引擎架构

    支持多种存储引擎是众所周知的MySQL特性,也是MySQL架构的关键优势之一.如果能够理解MySQL Server与存储引擎之间是怎样通过API交互的,将大大有利于理解MySQL的核心基础架构.本文将 ...

  2. mysql errmsg unknown_详解MySQL Server 启动时出现bug的解决方法

    在用的mysql Server 无法启动.日志如下: 复制代码 代码示例: 130507 12:22:11  mysqld started 130507 12:22:11 [Warning] opti ...

  3. win10服务器cpu占用过高,Win10 CPU占用率100%怎么办 Win10 CPU占用率过高解决方法

    Win10 CPU占用率100%怎么办 ?Win10系统CPU占用率过高的问题比较常见,下面为大家带来 Win10 CPU占用率过高解决方法 ,一起来看看. 方法1: 导致CPU占用的另一个原因可能是 ...

  4. mysql备份更换存储引擎_mysql数据库innodb存储引擎备份脚本

    mysql数据库innodb存储引擎备份脚本 #!/bin/bash # author: movekj # descript: backup mysql. full backup in sunday, ...

  5. wamp mysql端口被占用_MYSQL连接端口被占引入文件路径错误

    今天早上打算本地win7机器上用Wampserver搭建PHP环境,把自己的程序配置上去.下载最新的wampserver 3.0.6版本安装后,发现mysql一直无法运行,以为是wampserver版 ...

  6. mysql教材第四章课后题答案_mySQL 教程 第4章 数据查询

    mySQL运算符 这些运算符在SQL查询中用得到. 算数运算符 + 加 - 减 * 乘 / DIV 除 % MOD 取余数 比较运算符 = 等于 <> != 不等于 < <= ...

  7. mysql 查询两表 两列 比较大小写_mysql 查询表中列的数据不区分大小写的解决

    mysql查询默认是不区分大小写的 如: select * from some_table where str='abc'; select * from some_table where str='A ...

  8. mysql 有newid()_MySQL中,有无GUID函数?就像SQL Server中的newid()解决方法

    mysql中,有无GUID函数?就像SQL Server中的newid() 如题! 有无直接返回GUID唯一标识的函数? ------解决方案-------------------- 函数 UUID( ...

  9. 删除文件夹时显示文件已在另一个程序中打开的解决方法

    删除文件夹时: 按住Ctrl+shift+esc组合键打开任务管理器,点击性能中的打开资源监视器 在cpu选项中的关联的句柄里面输入文件夹名字 点击下面的进程结束进程 注意:一定不要结束explore ...

最新文章

  1. 《C和指针》读书笔记第一章快速上手
  2. 接口自动化测试 返回html,接口自动化测试实战(更新完毕)
  3. 项目中cxf和weblogic整合时报错的问题
  4. CTF-web文件上传漏洞
  5. 关于React中状态保存的研究
  6. Android数据存储:Shared Preferences
  7. linux内存管理(十五)-内存池
  8. mycat php pdo,mycat程序写入和读取中文乱码解决
  9. oracle asm参数优化,关于ASM参数文件的问题
  10. 深信服AC1000路由部署模式怎么配置线路负载均衡
  11. 预编译的头文件 pch.h
  12. 摆脱客户端?网页发起直播势在必行!
  13. 华为AC+AP设备上线思路
  14. windows10家庭版打开组策略
  15. html 滚动字幕如何设置,Html 文字滚动
  16. 产品经理-能力、技能要求
  17. 【ESP 保姆级教程】疯狂毕设篇 —— 案例:基于阿里云、小程序、Arduino的温湿度监控系统
  18. 有关面试八股文的一些难点
  19. Easy3DCGAL 点云下采样(体素)
  20. 1.计算机网络的发展,计算机网络的形成与发展

热门文章

  1. Linux Boot,Kernel 和 Service 介绍
  2. SAP Spartacus Template-Driven Outlets
  3. 关于自定义的登录机制在SAP Spartacus服务器端渲染(SSR)实施过程中遇到的问题
  4. 我的工作日志 - 2020年9月29日 星期二 晴
  5. SAP Commerce Extension的Web应用启动问题
  6. SAP Analytics Cloud和SAP Cloud for Customer的集成
  7. 给Visual Studio Code的文件夹和文件替换图标
  8. 阿里云上git clone公司内网仓库遇到的错误消息 - cannot resolve host
  9. 试图使用removebg工具的在线网站去除图片背景时遇到的错误
  10. SAP CRM Opportunity response area