mysql innodb启动失败_关于mysql innodb启动失败无法重启的处理方法讲解
电脑在使用过程中死机,重启后发现mysql没有启动成功,查看错误日志发现是innodb出现问题导致mysql启动失败。
错误日志$ mysql.server start
Starting MySQL
. ERROR! The server quit without updating PID file (/usr/local/var/mysql/fdipzonedeMacBook-Air.local.pid).22:08:37 mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql2016-04-23 22:08:38 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).2016-04-23 22:08:38 0 [Note] /usr/local/Cellar/mysql/5.6.24/bin/mysqld (mysqld 5.6.24) starting as process 3604 ...2016-04-23 22:08:38 3604 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive2016-04-23 22:08:38 3604 [Note] Plugin 'FEDERATED' is disabled.2016-04-23 22:08:38 3604 [Note] InnoDB: Using atomics to ref count buffer pool pages2016-04-23 22:08:38 3604 [Note] InnoDB: The InnoDB memory heap is disabled2016-04-23 22:08:38 3604 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins2016-04-23 22:08:38 3604 [Note] InnoDB: Memory barrier is not used2016-04-23 22:08:38 3604 [Note] InnoDB: Compressed tables use zlib 1.2.32016-04-23 22:08:38 3604 [Note] InnoDB: Using CPU crc32 instructions2016-04-23 22:08:38 3604 [Note] InnoDB: Initializing buffer pool, size = 128.0M2016-04-23 22:08:38 3604 [Note] InnoDB: Completed initialization of buffer pool2016-04-23 22:08:38 3604 [Note] InnoDB: Highest supported file format is Barracuda.2016-04-23 22:08:38 3604 [Note] InnoDB: Log scan progressed past the checkpoint lsn 689299334402016-04-23 22:08:38 3604 [Note] InnoDB: Database was not shutdown normally!2016-04-23 22:08:38 3604 [Note] InnoDB: Starting crash recovery.2016-04-23 22:08:38 3604 [Note] InnoDB: Reading tablespace information from the .ibd files...2016-04-23 22:08:38 3604 [ERROR] InnoDB: checksum mismatch in tablespace ./test_user/user_recommend_code#P#pmax.ibd (table test_user/user_recommend_code#P#pmax)2016-04-23 22:08:38 3604 [Note] InnoDB: Page size:1024 Pages to analyze:642016-04-23 22:08:38 3604 [Note] InnoDB: Page size: 1024, Possible space_id count:02016-04-23 22:08:38 3604 [Note] InnoDB: Page size:2048 Pages to analyze:482016-04-23 22:08:38 3604 [Note] InnoDB: Page size: 2048, Possible space_id count:02016-04-23 22:08:38 3604 [Note] InnoDB: Page size:4096 Pages to analyze:242016-04-23 22:08:38 3604 [Note] InnoDB: Page size: 4096, Possible space_id count:02016-04-23 22:08:38 3604 [Note] InnoDB: Page size:8192 Pages to analyze:122016-04-23 22:08:38 3604 [Note] InnoDB: Page size: 8192, Possible space_id count:02016-04-23 22:08:38 3604 [Note] InnoDB: Page size:16384 Pages to analyze:62016-04-23 22:08:38 3604 [Note] InnoDB: VALID: space:2947354 page_no:3 page_size:163842016-04-23 22:08:38 3604 [Note] InnoDB: Page size: 16384, Possible space_id count:12016-04-23 22:08:38 3604 [Note] InnoDB: space_id:2947354, Number of pages matched: 1/1 (16384)2016-04-23 22:08:38 3604 [Note] InnoDB: Chosen space:29473542016-04-23 22:08:38 3604 [Note] InnoDB: Restoring page 0 of tablespace 29473542016-04-23 22:08:38 3604 [Warning] InnoDB: Doublewrite does not have page_no=0 of space: 29473542016-04-23 22:08:38 7fff79b9e300 InnoDB: Operating system error number 2 in a file operation.
InnoDB: The error means the system cannot find the path specified.
InnoDB: If you are installing InnoDB, remember that you must create
InnoDB: directories yourself, InnoDB does not create them.
InnoDB: Error: could not open single-table tablespace file ./test_user/user_recommend_code#P#pmax.ibdInnoDB: We do not continue the crash recovery, because the table may become
InnoDB: corrupt if we cannot apply the log records in the InnoDB log to it.
InnoDB: To fix the problem and start mysqld:
InnoDB: 1) If there is a permission problem in the file and mysqld cannot
InnoDB: open the file, you should modify the permissions.
InnoDB: 2) If the table is not needed, or you can restore it from a backup,
InnoDB: then you can remove the .ibd file, and InnoDB will do a normal
InnoDB: crash recovery and ignore that table.
InnoDB: 3) If the file system or the disk is broken, and you cannot remove
InnoDB: the .ibd file, you can set innodb_force_recovery > 0 in my.cnf
InnoDB: and force InnoDB to continue crash recovery here.
解决方法
1.如果数据不重要或已经有备份,只需要恢复mysql启动
进入mysql目录,一般是:/usr/local/var/mysql/
删除ib_logfile*
删除ibdata*
删除所有数据库物理目录(例如数据库为test_db,则执行rm -rf test_db)
重启动mysql
重新建立数据库或使用备份覆盖
2.如果数据很重要且没有备份
可以使用innodb_force_recovery参数,使mysqld跳过恢复步骤,启动mysqld,将数据导出然后重建数据库。
innodb_force_recovery 可以设置为1-6,大的数字包含前面所有数字的影响(SRV_FORCE_IGNORE_CORRUPT):忽略检查到的corrupt页。
(SRV_FORCE_NO_BACKGROUND):阻止主线程的运行,如主线程需要执行full purge操作,会导致crash。
(SRV_FORCE_NO_TRX_UNDO):不执行事务回滚操作。
(SRV_FORCE_NO_IBUF_MERGE):不执行插入缓冲的合并操作。
(SRV_FORCE_NO_UNDO_LOG_SCAN):不查看重做日志,InnoDB存储引擎会将未提交的事务视为已提交。
(SRV_FORCE_NO_LOG_REDO):不执行前滚的操作。
在my.cnf(windows是my.ini)中加入
innodb_force_recovery = 6
innodb_purge_thread = 0
重启mysql
这时只可以执行select,create,drop操作,但不能执行insert,update,delete操作
执行逻辑导出,完成后将innodb_force_recovery=0,innodb_purge_threads=1,然后重建数据库,最后把导出的数据重新导入
本文讲解了关于mysql innodb启动失败无法重启的处理方法讲解,更多相关内容请关注微课江湖。
相关推荐:
讲解php获取指定日期的相关内容
详解PHP生成唯一RequestID类
如何通过MySQL查看数据库表容量大小
mysql innodb启动失败_关于mysql innodb启动失败无法重启的处理方法讲解相关推荐
- Mysql运行在内核空间_思考mysql内核之初级系列6—innodb文件管理 | 学步园
在上一篇里面,bingxi和alex思考了information_schema,这个一直在innodb外围打转.没有进入到innodb的内部.在后续的文章中,以innodb的为主,逐个思考.Bingx ...
- mysql运维机制_《MySQL运维内参》节选 | InnoDB日志管理机制(一)
引 子 InnoDB 存储引擎是支持事务ACID特性的,它是以二十多年前IBM的一篇著名文章<ARIES:A Transaction Recovery Method Supporting Fin ...
- mysql innodb 数据复制_快速将InnoDB表复制到另一个实例
此过程演示如何将常规InnoDB表从正在运行的MySQL服务器实例复制 到另一个正在运行的实例.可以使用具有微小调整的相同过程在同一实例上执行完整表还原. 在源实例上,创建一个表(如果不存在): my ...
- mysql qps 索引查询_【MySQL】MySQL配置调优之 QPS/TPS/索引缓存命中率、innoDB索引缓存命中率、查询缓存命中率查看...
运行中的mysql状态查看: 对正在运行的mysql进行监控,其中一个方式就是查看mysql运行状态. (1)QPS(每秒Query量) QPS = Questions(or Queries) / s ...
- innodb 集群_部署MySQL InnoDB集群以实现高可用性
innodb 集群 In this article, I am going to explain how we can deploy the MySQL InnoDB cluster. InnoDB ...
- mysql.exe不运行_求解mysql进程mysqld.exe无法启动原因及解决办法
求解mysql进程mysqld.exe无法启动原因及解决方法 120908 20:03:20 [Note] Plugin 'FEDERATED' is disabled. 120908 20:03:2 ...
- mysql 回滚失败_浅析Mysql 数据回滚错误的解决方法
MYSQL的事务处理主要有两种方法.1.用begin,rollback,commit来实现begin 开始一个事务 rollback 事务回滚 commit 事务确认 2.直接用set来改变mysql ...
- docker配置容器mysql启动参数_修改Docker容器启动配置参数
有时候,我们创建容器时忘了添加参数 --restart=always ,当 Docker 重启时,容器未能自动启动, 现在要添加该参数怎么办呢,方法有二: 1.Docker 命令修改 docker c ...
- php mysql 失败_在php中插入失败的数据mysql
我需要将记录添加到表'文字'中.正如您在下面的代码中看到的那样,失败会导致消息data insert failed.在php中插入失败的数据mysql 我已经试图改变一切,在线论坛建议,但它没有帮助. ...
最新文章
- 从奥运订票系统说起——谈FastCGI 与IT 架构
- Magento — B2C与B2B平台
- 能赢球只拿12分也行 麦蒂明言不和姚明争老大
- TFS在项目中Devops落地进程(上)
- Silverlight开发历程—模糊特效与投影特效
- windows查询每个线程占用的内存_C#多线程
- hdu 3530 单调队列 **
- 校验身份证_制作全国身份证号验证及查询系统
- 算法:Number of Islands(岛屿的个数)
- Java关于周跨年的周数计算,编写一个JAVA类,用于计算两个日期之间的周数。
- segy地震数据的读取python_SEGY地震数据格式分析与读写
- Vue+百度地图api
- Windows API ShowWindow和UpdateWindow
- 秀才seo博客:搜索引擎优化的前身和未来
- 果然十三香!史上最强iPhone13来了:全面降价、刘海缩小,支持120HZ高刷!网友:真香!苹果:业内苦苦追赶我们的芯片性能...
- AI芯片:寒武纪DaDianNao结构分析
- java赋值运算的类型转换出新的问题_Java中byte、short、char、int、long运算时自动类型转化问题...
- 中科院博士论文致谢走红:求学22载,计算机终成一生的事业
- WordPress如何采集WordPress采集插件推荐
- MySQL级联优缺点_【Mysql】外键级联与级联的劣势_MySQL
热门文章
- Linux/Android的cpu/memory/磁盘占用情况
- 新手入门概览(一):机器学习
- 高通driver模块编译方法
- Android 匿名共享内存驱动源码分析
- c语言中冒泡排序、插入排序、选择排序算法比较
- 设置php语言,PHP语言之php-fpm 基本设置与启动
- wireshark tshark抓包筛选并存入文件 Centos linux 命令行抓包 yum安装wireshark
- 已解决:Cannot find ./catalina.sh The file is absent or does not have execute permission This file is ne
- 进阶07 Set接口、HashSet、LinkedHashSet
- 设计模式--工厂模式(简单总结)