首页 > 数据库 >记一次Mysql的修复

记一次Mysql的修复

时间:2022-10-14 15:59:57浏览次数:50  
标签:std 一次 修复 exe InnoDB Mysql mysqld page QEAAX

现象:

  生产环境的MySql无故停止,版本是5.7,启动后马上就又停止,不知道原因

 错误日志如下:

InnoDB: End of page dump
2022-10-14T05:43:37.668007Z 0 [Note] InnoDB: Uncompressed page, stored checksum in field1 182295738, calculated checksums for field1: crc32 182295738/2080081071, innodb 4255406577, none 3735928559, stored checksum in field2 182295738, calculated checksums for field2: crc32 182295738/2080081071, innodb 623126066, none 3735928559,  page LSN 13 1167924469, low 4 bytes of LSN at page end 1167924469, page number (if stored to page already) 590901, space id (if created with >= MySQL-4.1.1 and stored already) 261
InnoDB: Page may be an index page where index id is 439
2022-10-14T05:43:37.669825Z 0 [ERROR] [FATAL] InnoDB: Apparent corruption of an index page [page id: space=261, page number=590901] to be written to data file. We intentionally crash the server to prevent corrupt data from ending up in data files.
2022-10-14 13:43:37 0x22e8  InnoDB: Assertion failure in thread 8936 in file ut0ut.cc line 918
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
05:43:37 UTC - mysqld got exception 0x80000003 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
Attempting to collect some information that could help diagnose the problem.
As this is a crash and something is definitely wrong, the information
collection process might fail.

key_buffer_size=8388608
read_buffer_size=131072
max_used_connections=0
max_threads=151
thread_count=0
connection_count=0
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 68016 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
7ff6d59c49c2    mysqld.exe!my_errno()
7fff53e8ee1d    MSVCR120.dll!raise()
7fff53e94a14    MSVCR120.dll!abort()
7ff6d5ae0424    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
7ff6d5ae0601    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
7ff6d5c1b38c    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
7ff6d5c1bfdd    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
7ff6d5aae980    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
7ff6d5aae84d    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
7ff6d5aaf519    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
7ff6d5ab4587    mysqld.exe!?reserve@?$vector@EV?$allocator@E@std@@@std@@QEAAX_K@Z()
7fff9bd47034    KERNEL32.DLL!BaseThreadInitThunk()
7fff9cd226a1    ntdll.dll!RtlUserThreadStart()
The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
information that should help you find out what is causing the crash.

 

解决方法:

  在ini文件里添加代码:“innodb_force_recovery=6”,示例如下

[mysqld]
port=3306
innodb_force_recovery=6

 

完成后启动mysql,然后使用navicat进行数据库备份

然后安装mysql8,然后再用navicat恢复

标签:std,一次,修复,exe,InnoDB,Mysql,mysqld,page,QEAAX
From: https://www.cnblogs.com/wjx-blog/p/16791793.html

相关文章

  • mysql创建索引的语句
     1. altertable table_name addindexindex_name(column) 2.altertabletable_nameaddprimarykey(column)/addunique主键索引或者唯一值索引 3.cre......
  • MySQL索引(上)
    MySQL索引(上)该文摘抄自林晓斌老师的文章索引是一种数据结构,索引的出现其实就是为了提高数据查询的效率,就像书的目录一样。一本500页的书,如果你想快速找到其中的某一个知......
  • 1.0 Mysql索引的数据结构与算法
    索引是高效获取排序好的数据结构索引本身就是数据一部分关键信息,通过索引大大减少索引的数据量。索引信息需要额外的空间存储。创建和维护索引本身也会降低对数据的操作......
  • python操作mysql
    安装第三方库pipinstallpymysql连接数据库案例1案例2插入数据时,需要commit提交方式2应用实例代码实现......
  • 设置MySQL 创建数据库,默认为UTF-8
    Windows安装MySQL5.7x64位MySQL8.0及以上默认为utf8,所以不需要设置mysql>showvariableslike'character_%'mysql>showvariableslike'collation_%'修改......
  • aidlux 安装 mysql 并设置密码及远程访问
    本文链接:aidlux安装mysql并设置密码及远程访问-Tiac-博客园(cnblogs.com) 一、安装mysql直接在应用中心里搜索安装mysql即可 二、启动mysql终端输入......
  • 一款DBA开发的Oracle迁移MySQL工具-oracle_mig_mysql
    这是一款由业余DBA写的数据迁移工具,可在线一键迁移Oracle数据库到MySQL数据库,包含表元数据、数据行迁移、视图、部分触发器、自增列、索引约束等对象自动创建。操作简单,开......
  • MySQL事务隔离
    MySQL事务隔离该文摘抄自林晓斌老师的文章提到事务,你肯定不陌生,和数据库打交道的时候,我们总是会用到事务。最经典的例子就是转账,你要给朋友小王转100块钱,而此时你的银......
  • linux 安装mysql8.0.11
    1.使用系统的root账户2.切换到/use/local目录下3.下载mysql?wgethttps://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz也可以......
  • MySql时间处理函数的学习与实践
    前言日常业务开发中,我们经常需要跟SQl的日期打交道,比如查询最近30天的订单,查询某一个月的订单量,统计某天每小时的下单量等等,于是整理了以下MySql时间处理函数。DATE_ADD()定......