mysql bug( InnoDB: Error number 22),表突然不能读取

mysql bug( InnoDB: Error number 22),表突然不能读取

  • bug
    • 最开始的bug:表突然不能读取
    • 关闭mysql容器,再次重启失败
  • 解决方案
    • 不重建容器的几种可能措施
    • 重建容器
      • 重建
      • 如果懒得打命令或者忘记命令
      • 可能的run bug:xxxx file exists.

bug

最开始的bug:表突然不能读取

2024-03-06 15:06:11 2024-03-06T07:06:11.137389Z 17 [ERROR] InnoDB: Error number 22 means 'Invalid argument'
2024-03-06 15:06:11 2024-03-06T07:06:11.137394Z 17 [Note] InnoDB: Some operating system error numbers are described at http://dev.mysql.com/doc/refman/5.7/en/operating-system-error-codes.html
2024-03-06 15:06:11 2024-03-06T07:06:11.137397Z 17 [ERROR] InnoDB: File ./webbuild/sys_config.frm: 'stat' returned OS error 122.

关闭mysql容器,再次重启失败

2024-03-06 15:07:25 2024-03-06T07:07:25.883653Z 0 [ERROR] InnoDB: Operating system error number 22 in a file operation.
2024-03-06 15:07:25 2024-03-06T07:07:25.883688Z 0 [ERROR] InnoDB: Error number 22 means 'Invalid argument'
2024-03-06 15:07:25 2024-03-06T07:07:25.883695Z 0 [Note] InnoDB: Some operating system error numbers are described at http://dev.mysql.com/doc/refman/5.7/en/operating-system-error-codes.html
2024-03-06 15:07:25 2024-03-06T07:07:25.883698Z 0 [ERROR] InnoDB: File .//ib_buffer_pool: 'stat' returned OS error 122.
2024-03-06 15:07:25 2024-03-06T07:07:25.883703Z 0 [Note] InnoDB: Dumping buffer pool(s) to /var/lib/mysql/ib_buffer_pool
2024-03-06 15:07:25 2024-03-06T07:07:25.883877Z 0 [ERROR] InnoDB: Cannot open '/var/lib/mysql/ib_buffer_pool.incomplete' for writing: Invalid argument
2024-03-06 15:07:26 2024-03-06T07:07:26.585788Z 0 [ERROR] InnoDB: Operating system error number 5 in a file operation.
2024-03-06 15:07:26 2024-03-06T07:07:26.585931Z 0 [ERROR] InnoDB: Error number 5 means 'Input/output error'
2024-03-06 15:07:26 2024-03-06T07:07:26.585953Z 0 [Note] InnoDB: Some operating system error numbers are described at http://dev.mysql.com/doc/refman/5.7/en/operating-system-error-codes.html
2024-03-06 15:07:26 2024-03-06T07:07:26.585967Z 0 [ERROR] InnoDB: File ./ib_logfile0: 'Linux aio' returned OS error 105. Cannot continue operation
2024-03-06 15:07:26 2024-03-06T07:07:26.585975Z 0 [ERROR] InnoDB: Cannot continue operation.
2024-03-05 13:42:51 2024-03-05 05:42:51+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.44-1.el7 started.
2024-03-05 13:42:51 2024-03-05 05:42:51+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2024-03-05 13:42:51 2024-03-05 05:42:51+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.44-1.el7 started.
2024-03-05 13:42:52 '/var/lib/mysql/mysql.sock' -> '/var/run/mysqld/mysqld.sock'

解决方案

不重建容器的几种可能措施

关键的信息:

  • File ./webbuild/sys_config.frm: ‘stat’ returned OS error 122.
  • Operating system error number 22 in a file operation.
  • File .//ib_buffer_pool: ‘stat’ returned OS error 122.
  • Cannot open '/var/lib/mysql/ib_buffer_pool.incomplete’ for writing: Invalid argument
  • File ./ib_logfile0: ‘Linux aio’ returned OS error 105. Cannot continue operation
  • ‘/var/lib/mysql/mysql.sock’ -> ‘/var/run/mysqld/mysqld.sock

查了下,有以下几种可能:

  • dokcer在windows上的文件系统兼容问题(‘Linux aio’),重启docker(优先建议这种方法,docker引擎在window很容易出问题)
  • 我的sys_config表的stat字段有问题,移除它的表文件
  • 容器内存不够,mysql的缓存页空间不足(ib_buffer_pool),docker update扩容
  • logfile文件问题:备份并移除logfile文件(./ib_logfile0)

除了重启没试过,其他试了都没有,我就重建容器了(因为其他容器正常就没第一时间怀疑docker),后面还是重启docker解决

重建容器

重建

docker run  --env=MYSQL_ROOT_PASSWORD=xxxx --env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin --env=GOSU_VERSION=1.16 --env=MYSQL_MAJOR=5.7 --env=MYSQL_VERSION=5.7.44-1.el7 --env=MYSQL_SHELL_VERSION=8.0.35-1.el7 --volume=E:\volume\mysql\mysql5.7\conf:/etc/mysql/conf.d --volume=E:\volume\mysql\mysql5.7\data:/var/lib/mysql --volume=E:\volume\mysql\mysql5.7\log:/var/log --volume=/var/lib/mysql -p 3306:3306 --restart=no --runtime=runc --memory="1073741824" -d mysql:5.7

如果懒得打命令或者忘记命令

2种方式:

  • docker desktop软件
  • docker commit
    在这里插入图片描述

在这里插入图片描述

可能的run bug:xxxx file exists.

docker: Error response from daemon: error while creating mount source path '/run/desktop/mnt/host/e/volume/mysql/mysql5.7/data': mkdir /run/desktop/mnt/host/e: file exists.

docker在windows上的兼容问题,将docker重启一下,再次run ,ok
(说明最开始的mysql bug应该就是docker的文件系统兼容问题,应该重启docker就行,不用重建)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/437100.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL知识体系】第2章 数据库与表的创建(一)

第2章 数据库与表的创建 2.1 数据库操作 2.2 表操作 文章目录 第2章 数据库与表的创建2.1 数据库操作2.1.1 创建第一个数据库2.1.2 更新数据库名称(数据库创建后无法修改名称)2.1.3 删除数据库2.1.4 取个合适的数据库名称 第2章 数据库与表的创建 2.1 数…

Vue2 中通过自定义指令将字母转大写

需求是需要将 Code 录入的字母转为大写 /*** 字母转大写*/function inputHandler(e) {e.target.value e.target.value.toUpperCase();// 触发 input 事件以便 v-model 更新数据e.target.dispatchEvent(new Event("input")); }export default {bind: function (el) {…

教育界杂志《教育界》杂志社教育界编辑部2024年第2期目录

教育视界 小学语文课内外阅读的有效融合策略 任小惠; 2-4 项目化学习在初中音乐教学中的应用探索 毛海蓉; 5-7 探索之窗《教育界》投稿:cn7kantougao163.com 儿童无边界阅读支撑系统的建构与实施 袁干斌;蒯红良; 8-10 中学教学 基于核心素养培养的高…

Mybatis-Plus——07,性能分析插件

性能分析插件 一、导入插件二、SpringBoot中配置环境为dev或test环境三、运行测试————————创作不易,笔记不易,如觉不错,请三连,谢谢~~ MybatisPlus也提供了性能分析插件,如果超过这个时间就停止运行&#xff0…

【系统学习】2-Java进阶知识总结-3-集合-1-补充【泛型、树、数据结构】

文章目录 泛型什么是泛型?常见的泛型标识符泛型类泛型方法泛型接口通配符 树树的基本概念什么是二叉树?二叉树--普通二叉树二叉树--二叉查找树定义规则优缺点 二叉树--平衡二叉树定义规则旋转机制 二叉树--红黑树定义规则红黑规则 常见数据结构总体特点结…

AI-数学-高中-31-统计-总体方差与样本方差(新教材内容)

原作者视频(P158):【统计】【一数辞典】5方差知识补充(中档)(新教材内容)_哔哩哔哩_bilibili 方差研究的实际意义:方差是充分反映一组数据内波动大小程度的代表性描述数值。若一组数据内,方差越…

谷歌seo外链怎么发?

谷歌SEO外链建设,说白了,就是让别的网站放一条或几条链接指向你的网站,这事听着简单,但你凭什么在别人的地盘放自己网站的链接,就算真的能放自己网站的链接,你又是否能保证你发的内容跟自己网站相关&#x…

AI论文速读 | 【综述】城市计算中跨域数据融合的深度学习:分类、进展和展望

题目:Deep Learning for Cross-Domain Data Fusion in Urban Computing: Taxonomy, Advances, and Outlook 作者:Xingchen Zou, Yibo Yan, Xixuan Hao, Yuehong Hu, Haomin Wen(温皓珉), Erdong Liu, Junbo Zhang(张钧…

Java适配器设计模式

Java适配器设计模式这一节后面的内容

面向对象中不可变性

软件设计中的不可变性是一个非常重要的概念,它可以在多个方面提高代码的可靠性、可维护性和安全性。 从开发者角度(代码提供者): 在软件开发过程中,当某个对象的属性是不可变的时候,这意味着这些属性的值…

用java实现A*寻路算法

前言: 最近的开发中遇到了寻路这个知识点,然后去了解了一下最常见的A算法,本会会结合我的理解,用最通俗易懂的话语讲解A算法的原理,下面会给出代码示例。 说到寻路算法,就涉及到了图的遍历,然…

开年采购云服务器,怎么买最划算?看这篇!

在2024年开年之际,对于许多企业和个人而言,采购云服务器已成为一项重要的决策。云服务器以其灵活性、可扩展性和高可用性等特点,吸引了越来越多的用户。然而,市场上的云服务器提供商众多,如何选择一家值得入手的服务商…

Domain Driven Design (DDD)

Domain Driven Design (DDD领域驱动设计)主要是业务分类例如(订单、合同、生产、检测、物流、运输等),独立单元相互不干扰,仅暴露接口的模型。核心在Domain,所有业务模块放这边,当然我们做的时候微服务是一…

如何对接1688平台官方开发平台的商品发布/商品过期处理/商品订单接口?

custom-自定义API操作 API测试 注册开通 1688.custom 1688平台官方开放接口 公共参数 名称类型必须描述keyString是调用key(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请求地址中)[…

windows部署ruoyi-vue-pro

前提 安装java 安装maven 安装redis mysql 源代码下载 后端 ruoyi-vue-pro 前端 yudao-ui-admin-vue3 后端项目 配置maven 导入数据 CREATE DATABASE ruoyi_vue_pro;修改mysql连接配置 修改redis 打包项目 mvn clean install package -Dmaven.test.skiptrue启动YudaoSe…

TC397 Tasking CMake Gitlab CI CD 环境配置

文章目录 Aurix Development Studio 新建工程与配置Tasking 环境配置CMake 集成Win CMake MinGW 安装Tasking Toolchain 工具链CMakeLists.txtPowershell 脚本 Gitlab CI CDGithub Link 本篇先演示了ADS新建激活编译工程, 讲述了浮点模型, 链接脚本文件, 静态库集成等的设置, 接…

python并发编程:IO模型

一 IO模型 二 network IO 再说一下IO发生时涉及的对象和步骤。对于一个network IO \(这里我们以read举例\),它会涉及到两个系统对象,一个是调用这个IO的process \(or thread\),另一个就是系统内核\(kernel\)。当一个read操作发生时&#xff…

C语言学习--摩尔投票算法

目录 1.引入 2.摩尔投票算法 3.具体步骤 3.1抵消阶段 3.2检验过程 4.代码实现 5.总结 1.引入 今天做题看到一个解题思路真的看不懂&#xff0c;一艘才知道是这个算法。 int majorityElement(int* nums, int numsSize) { int notenums[0]; int count1; for(int i1;i<n…

day7-网络编程

1>基于UDP的网络聊天室 Ser.c #include <myhead.h> #define SER_IP "10.211.55.9" // 服务器IP #define SER_PORT 9999struct user {char usrName[20];struct sockaddr_in cin; }; int main(int argc, char const *argv[]) {// 1.创建用于监听的套接字int…

coqui-ai/TTS 案例model文件

GitHub - coqui-ai/TTS: &#x1f438;&#x1f4ac; - a deep learning toolkit for Text-to-Speech, battle-tested in research and production Coqui AI的TTS是一款开源深度学习文本转语音工具&#xff0c;以高质量、多语言合成著称。它提供超过1100种语言的预训练模型库&…