惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
月光博客
月光博客
博客园 - Franky
博客园 - 三生石上(FineUI控件)
爱范儿
爱范儿
博客园 - 司徒正美
博客园 - 叶小钗
Apple Machine Learning Research
Apple Machine Learning Research
美团技术团队
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
B
Blog RSS Feed
阮一峰的网络日志
阮一峰的网络日志
宝玉的分享
宝玉的分享
V
Visual Studio Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
IT之家
IT之家
博客园_首页
S
SegmentFault 最新的问题
A
About on SuperTechFans
Blog — PlanetScale
Blog — PlanetScale
GbyAI
GbyAI
H
Help Net Security
MongoDB | Blog
MongoDB | Blog

膨胀自留地

使用CloudFlare标记管理功能优雅的使用谷歌分析 四天轻松版北京旅游攻略 Adsense税务居住地证明申请教程:如何申请中国税收居民身份证明以及Google Adsense更新新加坡税务信息教程 常见的 VPS 优化措施 HTML实现table表格移动端自动转为卡片样式 个人网站接入 Google 登录 如何从 GitHub 永久删除泄露的 .env 文件 Cloudflare设置www的域名跳转到不带www的域名 顶级iOS神器!全面解开App Store限制,AssPP Pro保姆级教程 BroadcastChannel将你的 Telegram Channel 转为微博客 Medama开源轻量级网站统计(分析)系统 白嫖一个网站监控面板:uptime-kuma 部署TraffMonetizer利用闲置VPS挂机赚钱 Counterscale-使用CloudflareWorkers部署的免费网站数据统计工具,界面类似umami 封装一个最简单的Axios,避免过度封装! 如何使用Cloudflare Email Routing创建域名邮箱免费发送邮件 使用Cron定时更新Hosts解决Gihub无法访问问题 容器化MariaDB/Mysql实现定时备份 JetBrains全家桶许可证服务器怎么找,JetBrains激活教程 图片加速接口:缓存图片,加速访问,解决防盗链 MySQL模糊查询再也不用like+%了,全文索引介绍及使用简介 为什么这么多人推荐你办理流量卡?流量卡怎么赚钱?怎么避坑? 借助Cloudflare Worker实现Google Analytics反代加速,规避广告屏蔽插件的拦截 etcd入门之在Centos上安装部署 Grafana在linux下安装和基本使用入门 Prometheus介绍、安装和基本功能快速入门 无需加速器,油猴插件解锁xbox云游戏 阿里云盘自动每日签到,无需部署,无需服务器 自定义VSCode终端主题样式 一行 CSS 代码实现响应式布局 – 使用 Grid 实现的响应式布局
mysql 临时表空间,ibtmp1 表空间暴增解决办法
2019-11-20 · via 膨胀自留地

#编程技术 2019-11-20 09:34:00 | 全文 640 字,阅读约需 2 分钟 | 加载中... 次浏览

👋 相关阅读


接到了一台 MySQL5.7 服务器磁盘空间不足的报警,该业务的数据量 20G 的样子,是什么造成磁盘空间不足呢?

经过排查后发现,数据目录下面有一个 ibtmp1 的文件特别大,有 949G 。

ibtmp1 是个什么东西呢?查看官方文档后发现这是非压缩的 innodb 临时表的独立表空间。通过 innodb_temp_data_file_path 参数指定文件的路径,文件名和大小,默认配置为 ibtmp1:12M:autoextend,也就是说在支持大文件的系统这个文件大小是可以无限增长的。

解决办法

1、修改 my.cnf 配置文件:

innodb_temp_data_file_path = ibtmp1:12M:autoextend:max:5G

2、设置 innodb_fast_shutdown 参数

SET GLOBAL innodb_fast_shutdown = 0; 
## InnoDB does a slow shutdown, a full purge and a change buffer merge before shutting down

3、关闭 mysql 服务

4、删除 ibtmp1 文件

5、启动 mysql 服务

注意

为了避免以后再出现类似的情况,一定要限制临时表空间的最大值,如innodb_temp_data_file_path = ibtmp1:12M:autoextend:max:5G

参数解释

在 mysql 关闭时,参数 innodb_fast_shutdown 影响着表的存储引擎为 innodb 的行为。参数为 0,1,2 三个值。

  1. 代表当 MYSQL 关闭时,Innodb 需要完成所有 full purge 和 merge insert buffer 操作,这需要花费时间来完成。如果做 Innodb plugin 升级,通常需要将这个参数调为 0,然后再关闭数据库
  2. 是参数的默认值,不需要完成 full purge 和 merge insert buffer 操作,但是在缓冲池的一些数据脏页还是会刷新到磁盘。
  3. 表示不需要完成 full purge 和 merge insert buffer 操作 ,也不将缓冲池中的数据脏页写回磁盘,。而是将日志都写入日志文件。这样不会有任何事物丢失,但是 mysql 在下次启动时,会执行恢复操作(recovery)

如果在上次关闭 innodb 的时候是在 innodb_fast_shutdown=2 或是 mysql crash 这种情况,那么它会利用 redo log 重做那些已经提交了的事务。 接下来的操作过程是: (1). Rollback uncompleted transitions 取消那些没有提交的事务 (2). Purge all 清除无用的undo页 (3). Merge insert buffer 合并插入缓冲

via: https://blog.csdn.net/weixin_34358365/article/details/89822725 https://blog.csdn.net/edyf123/article/details/81026139


×