常见MySQL数据库无法启动的解决方案

news2024/12/17 8:32:54

前言:
数据库无法启动是在运维中常见的问题,大多是重启服务器、磁盘损坏、配置不当导致的。建议您在面板计划任务中做个数据库全部备份的计划任务,这样在遇到问题的情况下可以及时通过备份进行恢复。
在根据下面的案例尝试恢复或者启动数据库前,记得做个磁盘快照,以免操作不当增加恢复难度甚至无法恢复。
正确的做法是:
1、关闭web服务和其他可以写入磁盘的服务
2、做好磁盘快照
3、根据案例的解决方案进行上手操作
4、如果您不会或者不懂怎么操作,可以联系我们官方客服(面板右下角有客服二维码)

案例一innodb_buffer_pool_size配置不当导致启动失败

在这里插入图片描述

1、出现原因

  1. 服务器可用内存不足,导致无法分配更多的内存给innodb_buffer_pool_size
  2. 服务器内存充足,但是配置参数过大导致无法分配更多的内存给innodb_buffer_pool_size

2、解决方案

登录到面板—软件商店—mysql管理界面—性能调整,选择与自己的服务器实际内存相匹配的内存大小,然后重启服务器
在这里插入图片描述

案例二、错误提示:InnoDB:Could not find a valid tablespace file for…

在这里插入图片描述

1、出现原因

  1. 断电造成服务器关机,开机启动后导致出现innodb存储引擎出现孤立表
  2. 删除表的时候,该表还在使用中,导致未能完全删除,造成损坏
  3. 进行事务回滚时候恢复失败
  4. 非正常关闭MySQL服务造成MySQL物理文件损坏,导致MySQL无法读取物理文件
  5. 其他问题导致

2、解决方案:

1、官方文档

https://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html
https://dev.mysql.com/doc/refman/8.0/en/forcing-innodb-recovery.html

2、论坛针对性的教程

https://www.bt.cn/bbs/thread-87521-1-1.html

注意:操作前一定要做个快照或者磁盘备份,避免操作不当导致专业的DBA也无法进行恢复

案例三、错误提示:Error in Log_event::read_log_event(): ‘Event too small’, data_len: e, event_type: 0

1、出现原因

  1. 数据库非正常关闭
  2. 切换了MySQL版本导致无法解析mysql的二进制日志

2、解决方案:

1、官方文档

https://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html
https://dev.mysql.com/doc/refman/8.0/en/forcing-innodb-recovery.html

2、论坛针对性的教程

https://www.bt.cn/bbs/thread-87521-1-1.html

注意,操作前一定要做个快照或者磁盘备份,避免操作不当导致专业的DBA也无法进行恢复

案例四、 错误提示:/bin/mysqld: Table ‘./mysql/user’ is marked as crashed and should be repaired

在这里插入图片描述

1、出现原因

  1. MySQL数据库使用的user表损坏导致的

2、解决方案

  1. 登录到服务器SSH终端里
  2. 使用命令:/www/server/mysql/bin/mysqlcheck -uroot -p数据库密码 mysql user
  3. 修复完后,会有提示mysql.user OK字样,然后重新启动mysql即可

案例五、错误信息:[ ERROR]Got error 127 when reading table …

在这里插入图片描述

1、出现原因

  1. 数据库在读取、写入数据的时候引起数据库文件损坏导致数据库表错误

2、解决方案

  1. 登录到MySQL命令行中
  2. use对应的数据库
  3. CHECK TABLE wp_options;
  4. REPAIR TABLE wp_options;
  5. 再次检查表,CHECK TABLE wp_options; 如果输出OK,代表已经修复完成

注意操作前一定做好数据库备份,最好个快照。以免操作不当增加数据库恢复难度。

案例六 、启动mysql的时候提示:File ‘./mysql-bin.000015’ not found (Errcode: 2 - No such file or directory)

1、出现原因

  1. 手动删除了数据库的二进制日志
  2. 二进制日志损坏,导致mysql无法读取二进制日志
  3. 其他问题

2、解决方案

  1. 打开/www/server/data/mysql-bin.index
  2. 删掉提示找不到的mysql-bin.000015
  3. 重启mysql

操作后可能还会出现其他binlog日志文件找不到的话,可以把mysql-bin.index中记录的二进制日志跟
/www/server/data/中的mysql-bin.xxxx对比,保留一致的mysql-bin.xxx日志文件; 如果
/www/server/data/已经没有了mysql-bin.xxxx的话,需要把mysql-bin.index记录的二进制文件全部删掉

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

dedecms 文件上传(CVE-2019-8933)

dedecms 文件上传(CVE-2019-8933) 漏洞简介 远程攻击者可通过在添加新模板时,将文件名…/index.html更改成…/index.php利用该漏洞向uploads/目录上传.php文件并执行该文件。 后台路径:/uploads/dede/ 后台密码:admi…

贪心算法学习——最大数

目录 ​编辑 一,题目 二,题目接口 三,解题思路级代码 一,题目 给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。 注意:输出结果可能非常大…

WEB使用百度地图展示某地地址

第一步 进入百度地图开发平台 百度地图开放平台 | 百度地图API SDK | 地图开发 第二步注册 获取AK秘钥,点击【创建应用】进入AK申请页面,填写应用名称,务必选择AK类型为“浏览器端”,JS API只支持浏览器端AK进行请求与访问 下面…

AVM赛道研究:预计2024年渗透率突破50%!下一个破局点在哪儿?

作为一个典型的基础智能化细分赛道,全景环视(AVM)的发展历程值得市场借鉴。 这其中的原因包括,①对比渗透率仍处低位的高阶智驾,单一AVM赛道的产品基本进入成熟期(渗透率继续高歌猛进)&#xf…

《算法通关村—如何基于数组(或者链表)实现栈》

《算法通关村—如何基于数组(或者链表)实现栈》 理解什么是栈 栈和队列是比较特殊的线性表,又称之为访问受限的线性表。栈是很多表达式、符号等运算的基础,也是递归的底层实现。理论上递归能做的题目栈都可以,只是有…

NLog详解

目录 1.简介 2.项目中使用NLog 2.1 快速使用NLog 2.2 通过配置文件使用NLog 3.NLog配置参数详解 3.1 全局配置 3.2 根元素 3.2.1 targets 3.2.1.1 layout 3.2.2 rules 3.2.3 extensions 3.2.4 include 3.2.5 variable 4.附录 1.简介 NLog是一个基于.NET平台编写…

【C++代码】分糖,分饼干,摇摆序列,贪心算法--代码随想录

贪心的本质是选择每一阶段的局部最优,从而达到全局最优。靠自己手动模拟,如果模拟可行,就可以试一试贪心策略,如果不可行,可能需要动态规划。贪心算法一般分为如下四步: 将问题分解为若干个子问题找出适合的…

Shell 邮件发送告警测试

1.先编辑mail配置文件 #cat /etc/mail.rc#开启ssl set ssl-verifyignore#证书目录,下方为centos系统证书默认位置,也自行生成证书并指定 set nss-config-dir/etc/pki/nssdb# 配置的第三方smtp服务器的地址及端口 set smtpsmtps://smtp.163.com:465 # 认…

<多线程章节二>创建线程的几种常见方式

文章专栏 本篇文章收录于多线程,也欢迎翻阅博主的其他文章,可能也会让你有不一样的收获😄 💡JavaSE语法 💡数据结构 💡多线程 💡专栏导读 操作系统提供了一些API来操作线程,Java针对…

python把ChestX-Det-Dataset的json样本转为COCO数据集的json格式

ChestX-Det-Dataset数据集网址:https://github.com/Deepwise-AILab/ChestX-Det-Dataset/tree/main 数据集JSON内容: [{"file_name": "36199.png","syms": [],"boxes": [],"polygons": []},{"f…

分享一下怎么做陪诊小程序

在当今快节奏的社会中,人们的生活压力越来越大,尤其是在大城市中,由于工作繁忙,生活节奏快,很多人都感到看病难、看病贵的问题。为了解决这一问题,陪诊小程序应运而生。陪诊小程序是一种可以提供线上预约、…

基于SSM民宿预订及个性化服务系统-计算机毕设 附源码 04846

SSM民宿预订及个性化服务系统 摘 要 伴随着国内旅游经济的迅猛发展民宿住宿行在国内也迎来了前所未有的发展机遇。传统的旅游模式已难以满足游客日益多元化的需求,随着人们外出度假的时间越来越长,导致人们在住宿的选择上更加追求舒适、个性化的住宿体验…

vue+Fullcalendar

vueFullcalendar: vueFullcalendar项目代码https://gitee.com/Oyxgen404/vue--fullcalendar.git

CSS样式(盒子模型,内外边距等设置)

盒子模型 目标:掌握盒子模型组成部分,使用盒子模型布局网页区域 01-选择器 结构伪类选择器 基本使用 作用:根据元素的结构关系查找元素。 选择器说明E:first-child查找第一个E元素E:last-child查找最后一个E元素E:nth-child(N)查找第N个E…

jquery-picture-cut 任意文件上传 (CVE-2018-9208)

jquery-picture-cut 任意文件上传 (CVE-2018-9208) 漏洞描述 picture cut是一个jquery插件,以非常友好和简单的方式处理图像,具有基于bootstrap或jquery ui的漂亮界面,具有ajax上传,从资源管理器拖动图像…

Error: no matching distribution found for tensorflow-cpu==2.6.*

目录 install_tensorflow()安装过程中遇到的问题 查找解决方案过程中: 解决办法: install_tensorflow()安装过程中遇到的问题 在服务器上安装tensorflow时,遇到了一个报错信息: 在网上找到一个类似的错误(TensorFlow…

【EI会议征稿】第二届纯数学、应用数学与计算数学国际学术会议(PACM 2024)

第二届纯数学、应用数学与计算数学国际学术会议(PACM 2024) 2024 2nd International Cnference on Pure, Applied and Computational Mathematics (PACM 2024) 第二届纯数学、应用数学计算数学国际学术会议 (PACM2024) 将于2024年1月19-21日在中国厦门隆…

利用a标签锚点定位实现切换页面的部分内容

最近在做一个数据可视化大屏的作业,其中需要实现点击不同的按钮,大屏中间内容呈现不同的数据分析图表,页面其他部分不发生改变。之前考虑过复制多个页面然后改变中间的页面,但是这样会导致文件冗余,而且由于静态文件放…

【机器学习项目实战案例目录】项目详解 + 完整源码

前言 大家好,我是阿光。 本专栏整理了《机器学习项目实战案例》,内包含了各种不同的入门级机器学习项目,包含项目原理以及源码,每一个项目实例都附带有完整的代码。 正在更新中~ ✨ 🚨 我的项目环境: 平…

为什么要学Selenium自动化测试?

开发人员在编写代码时总是会考虑到不同的应用场景,但也可能会出现实现效果不如预期的情况。同样的原则也适用于测试代码,编写测试代码的主要目的是测试现有产品的功能、发现错误并使产品100%无错误。 有句话说得好:"真相总是比小说更离奇…