InnoDB数据字典操作进行故障排除

  • InnoDB数据字典操作进行故障排除

InnoDB数据字典操作进行故障排除

  1. 事情是这样的,因为昨天晚上停电,导致服务器全部关机,早上一到公司就把所有服务启动,当我启动爬虫任务的时候,发现采集提示数据库入库失败,mysql
    提示连接失败。我一看这提示应该是mysql服务没启动,我赶忙进入宝塔看看MySQL什么情况,果然是关闭状态,马上重启却重启失败,我看了看错误日志,好像是缺少了启动需要文件,我突然记起前天我手动改了配置文件数据存储位置,而没有使用宝塔提供的数据迁移功能

  1. 可能手动修改会造成问题,但当时没有问题,我想切换回原来目录应该就可以启动了,说干就干,使用迁移功能切换回原来储存目录,果然能行,服务启动了。
    但是第二个问题来,我切换回来后启动采集服务,mysql提示采集数据库表不存在,我马上打开数据库发现所有采集数据表都打不开提示表不存在,查看mysql错误日志提示:Cannot
    open table bk_esf_xq/bk_esf_copy from the internal data dictionary
    of InnoDB though the .frm file for the table exists. See
    http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html
    for how you can resolve the problem.

  2. 它说无法从InnoDB的内部数据字典中打开表bk_esf_xq/bk_esf_copy,尽管表存在.frm文件,
    .frm 是mysql数据表结构文件.
    如果你没有数表结构备份可以使用dbsake提取.frm文件表结构,这是偶然发现的一个工具,文档中它这样介绍自己:dbsake - a (s)wiss-(a)rmy-(k)nif(e) for MySQL
    作者一定是一个对 mysql 很有心得的人,工具从下载,安装到使用,简单,利落。

$ curl -s get.dbsake.net > dbsake$ chmod u+x dbsake$ ./dbsake frmdump [frm-file-path]
  1. MySQL提供了解决问题的连接http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html好评,查看官网文档发现问题解决办法,需要创建一个新库,用ibd文件数据导入新表 .idb 是mysql数据备份文件.

官网案例:在新的MySQL实例上,在同名数据库中重新创建表。

mysql> CREATE DATABASE sakila;mysql> USE sakila;mysql> CREATE TABLE actor (actor_id SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT,first_name VARCHAR(45) NOT NULL,last_name VARCHAR(45) NOT NULL,last_update TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,PRIMARY KEY  (actor_id),KEY idx_actor_last_name (last_name))ENGINE=InnoDB DEFAULT CHARSET=utf8;

丢弃新创建的表的表空间。

mysql> ALTER TABLE sakila.actor DISCARD TABLESPACE;

将孤立.ibd文件从备份目录复制到新的数据库目录。

shell> cp /backup_directory/actor.ibd path/to/mysql-5.6/data/sakila/

确保.ibd文件具有必要的文件权限。

导入孤立.ibd文件。发出警告,指示InnoDB尝试在不进行模式验证的情况下导入文件。

mysql> ALTER TABLE sakila.actor IMPORT TABLESPACE; SHOW WARNINGS;
Query OK, 0 rows affected, 1 warning (0.15 sec)Warning | 1810 | InnoDB: IO Read error: (2, No such file or directory)
Error opening './sakila/actor.cfg', will attempt to import
without schema verification

查询表以确认.ibd 文件已成功还原。

mysql> SELECT COUNT(*) FROM sakila.actor;
+----------+
| count(*) |
+----------+
|      200 |
+----------+

5.自此就可以恢复所有表结构与表数据,又开心的爬取数据入库了

InnoDB数据字典操作进行故障排除相关推荐

  1. 三菱mr服务器如何显示脉冲数,MR-JE-200A参数设置三菱MR-JE-200A操作手册(故障排除篇) - 广州正凌...

    类型:MR-C型. 符号10A适用电机型号:HC-PQ23. 电源电压:单相AC220V. 驱动器方面:伺服驱动器在发展了变频技术的前提下, 在驱动器内部的电流环, 速度环和位置环(变频器没有该环)都 ...

  2. CL210OpenStack操作的故障排除--诊断OpenStack问题

  3. winxp文件、打印机共享故障排除方法及“操作无法完成.键入的打印机名不正确,或者指定的打印机没有连接到服务器上

    上午同时说,网络打印机打印不了,于是首先看一下打印服务器IP是不是给换了,结果没换. 接着尝试重新添加一下网络打印机,结果问题来了,连不上,提示: 操作无法完成.键入的打印机名不正确,或者指定的打印机 ...

  4. 详细故障排除步骤:针对 Azure 中到 Windows VM 的远程桌面连接问题

    本文提供详细的故障排除步骤,用于为基于 Windows 的 Azure 虚拟机诊断和修复复杂的远程桌面错误. Important 若要消除更常见的远程桌面错误,请务必先阅读远程桌面的基本故障排除文章, ...

  5. 网络故障排除连载之一:常用排除方法综述

    一.对网络管理人员的要求 目前互联网络技术.拓扑和应用的复杂性决定了网络管理人员必须: 1.确保网络稳定运行: 2.掌握故障排除方法: 3.熟悉各种协议可能故障点,迅速定位排除故障. 对协议要求有精深 ...

  6. 基于路由器网络诊断步骤和故障排除技巧

    网络诊断是管好.用好网络,使网络发挥最大作用的重要技术工作.本文简述分层诊断技术,结合讨论路由器各种接口的诊断,综述互联网络连通性故障的排除. 网络故障诊断概述 网络故障诊断,从故障现象出发,以网络诊 ...

  7. linux5启动过程及故障排除

    启动过程及故障排除 1加电-----cmos---(post上电自检程序------mbr引导----grub菜单 开机自检>MBR引导>GRUB菜单>加载内核>运行init进 ...

  8. 6421B Lab3 DNS的配置与故障排除

    共1个实验 实验L3A:DNS的配置与故障排除 共有3个练习: 练习1:设计一个DNS架构. 练习2:部署与配置DNS. 练习3:DNS的故障排除. 练习1:设计一个DNS架构 场景:contoso公 ...

  9. mysql进程内存不足_故障排除指南:MySQL的运行内存不足怎么办?

    原标题:故障排除指南:MySQL的运行内存不足怎么办? [ ] [IT168 评论]故障排除对于所有人来说都不会是一件有趣的事情,尤其是在没有崩溃报告的情况下.如果MySQL因内存不足而崩溃时应该怎么 ...

最新文章

  1. Swift2.1 语法指南——自动引用计数
  2. CocosCreator内置函数实现物体拖动
  3. CodeForces509F Progress Monitoring
  4. 使用 Chrome 开发者工具分析内存问题
  5. 百度开源呼叫中心系统
  6. html中将字体设置成透明的,解决css设置背景透明,文字不透明_html/css_WEB-ITnose
  7. linux异常死机日志,Linux常见死机原因
  8. 基于Andriod的简易记事本APP设计与实现
  9. 46家中外知名企业笔试面试题目
  10. 微信直播小程序端集成源代码
  11. 用Python如何开发Excel宏脚本?新手必学
  12. A006-AndroidManifest.xml解析
  13. 计算机为什么有网络凭证,Win10访问局域网中计算机共享文件显示需要网络凭证怎么办?...
  14. 普元 AppServer 7.0 执行startServer.cmd启动,命令行一直启动中,server.log报错:com.primeton.appserver.l7e.exception.Impr
  15. XCode下Object C和C++混合编译
  16. 南开大学和华科计算机考研哪个好,都是985名校,南开大学和天津大学,哪个更值得上?...
  17. windows应用商店重置后不能用
  18. 最适合初学者的Linux运维学习教程2018版
  19. java程序占用实际内存大小
  20. Web安全信息收集之CMS指纹识别

热门文章

  1. 正交变换——来龙去脉
  2. opencv 去除背景
  3. 微服系列之Feign使用HttpClient和OkHttp网络请求框架
  4. javaWeb基础---Jsp
  5. Eclipse中如何查看使用的JDK版本?
  6. 【20221205】Windows系统反斜杠(倒斜杠 \ )和 Linux系统正斜杠(斜杠 / )
  7. SQL Server性能监视
  8. java向上取整去掉末尾的0_BigDecimal去除末尾多余的0
  9. WslRegisterDistribution failed with error: 0x80370102 Error: 0x80370102 ???????????????????
  10. 激活函数变种(Sigmoid、Hard-Sigmoid、Tanh、ReLU、Leaky ReLU、ELU、SELU、ReLU6、Swish、Hard-Swish、Mish)