一、背景

个人笔记本电脑主板挂了拿去维修了,手头就一个固态盘。因项目需要,不得不还原数据库到个人云主机(CentOS)。由于没有数据库管理软件,所以只能使用固态盘中mysql的数据目录下的数据文件完成数据还原。

二、操作过程

1、备份目标主机mysql中的数据库!备份目标主机mysql中的数据库!备份目标主机mysql中的数据库!重要的事情说三遍,不管大佬多么牛,备份一下还是很有必要的!

2、从固态盘中找到mysql数据目录,并将目录下所需数据库对应的文件夹及ibdata1文件一并拷贝至目标主机下mysql数据目录,可通过如下sql查询:

show global variables like "%datadir%";

由于ibdata1在目标主机的mysql数据目录下本来就有,所以在拷贝或者解压(如果是放在压缩包中搞进去的)的时候都会给个提示,如果在做了第一步备份的前提下,可以选择覆盖或者替换。

需要注意的是,如果没有将ibdata1拷贝过去,在执行第4步,完成mysql重启后,进入还原后的数据库,打开表的时候会报如下错误:

1146 - Table 'space.xxxx表' doesn't exist

3、修改拷贝过来的文件的拥有者跟用户组

chown -R mysql 数据库目录
chgrp -R mysql 数据库目录
chown -R mysql ibdata1文件
chgrp -R mysql ibdata1文件

此时,先去数据库连接工具中去看看,其他的数据库是否还能正常访问。如果还能访问,那么还能在此时备份数据。

4、重启mysql

systemctl restart mysqld

5、使用数据库连接工具(本人使用的Navicat)连接数据库进行检查,此时被还原的数据库已经可以正常访问了。但是!!!其他的数据库访问的时候出现了以下报错:

[Err] 1813 - Tablespace xxxx exists.
[Err] Failed to create Table: xxxxv

如果已经执行过备份操作,那么可以不用慌,可以按照第6步的操作方式进行处理。

6、处理问题

首先,去目标主机的mysql数据库数据目录下找到报错的数据库对应的目录,删除目录下所有的.idb文件。

rm -rf ./*.idb

其次,使用数据库备份文件还原对应的数据库。最后验证发现已经还原到之前的状态了!

三、总结

至此,本次通过mysql数据库文件还原数据库的过程就操作完成了。形成此文档的目的,一方面是为了便于后期遇到同样的问题时有个参考,另一方面也希望能够帮助的跟我遇到同样问题的小伙伴。以上操作是本人实操记录,如有不到位的地方,欢迎各位大佬批评指正!

记一次使用MySQL5.7数据库数据目录下的文件恢复数据到个人云主机(CentOS7)中MySQL5.7的过程相关推荐

  1. frm文件导入mysql5.7_使用frm,ibd文件恢复数据库文件,mysql5.7.31,centos7.5,20200813...

    使用frm,ibd文件恢复数据库文件共有3步,安装数据库,恢复表结构,恢复表数据 我实操的软件版本,mysql5.7.31,centos7.5,20200813,数据库展开597MB 一,安装数据库 ...

  2. mysql frm ibd 创建表_MySQL数据库实现从.frm文件和.ibd文件恢复数据表方法

    MySQL中.frm文件:保存了每个表的元数据,包括表结构的定义等,该文件与数据库引擎无关. MySQL中.ibd文件:InnoDB引擎开启了独立表空间(my.ini中配置innodb_file_pe ...

  3. CentOS7中MySQL5.7 主主互备配置

    CentOS7 中 MySQL 5.7 主主互备配置 ​ 先从MySQL对数据库复制的能力看,MySQL支持单向.异步的复制.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服 ...

  4. 商城平台搭建(二)mysql5.7、以及运行sql文件导入数据

    1 下载Mysql 在mysql官网http://dev.mysql.com/downloads/mysql/下载编译好的二进制安装包,在下载页面Select Platform选项中选择Linux-G ...

  5. 数据库误操作,如何恢复数据(SQL事务,或数据库还原)

    数据库误操作 一般指,不小心删除/插入了某个数据,或是当有多个操作同时执行时,因为网络原因或者机器原因,导致整体操作只执行了一半,而数据已失去了逻辑性 例如: 删除A表数据 插入B表中与A表关联的某个 ...

  6. 阿里云Mysql5.7 数据库恢复 qp.xb文件恢复数据

    1.宕下来的文件,一定是qp.xb的文件,如果不是qp.xb文件,该恢复文档不适合 2.准备linux系统,centos最好 3.centos 基础环境准备完之后安装必须要的恢复软件[基本按照官方文档 ...

  7. mysql frm和ibd怎么恢复数据库_mysql数据库通过frm和ibd恢复数据

    放在阿里云服务器上的一台Linux云服务器被挖矿了,一个开源系统demo演示网站被人上传违规信息,站点也被阿里云屏蔽了.准备迁移数据并重置服务器,匆忙之间拷贝了mysql/data目录下的数据文件就把 ...

  8. mysql数据库熟悉表空间数据文件_MySQL数据文件介绍及存放位置

    MySQL的每个数据库都对应存放在一个与数据库同名的文件夹中,MySQL数据库文件包括MySQL所建数据库文件和MySQL所用存储引擎创建的数据库文件. 1.MySQL创建并管理的数据库文件: .fr ...

  9. mysql数据库恢复数据_【技术分享】使用Innodb存储引擎的mysql数据库恢复

    作者:维一零 预估稿费:400RMB(不服你也来投稿啊!) 投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 前言 某天,在测试一张新数据表的字段时,由于在phpmyadmin不断 ...

最新文章

  1. php图形图像处理技术
  2. 1号店11.11:分布式搜索引擎的架构实践
  3. salt的远程部署java-1.6.0-openjdk
  4. 陶哲轩实分析习题8.5.15
  5. 借助xxl-sso实现SSO
  6. Linux之MySQL源码编译安装
  7. 怀旧服最新服务器塞卡尔,魔兽世界怀旧服:10个至今未开门的服务器!圣光服进度刚到20%!...
  8. Rust: r# 原生标识操作符
  9. 二等水准数据平差_二等水准点高程平差计算表(1)
  10. 趋势丨关于未来世界的50个超级趋势
  11. ?Agilent.GoldenGate.RFIC.Simulation.2015.01.v4.9.0.Win64 1CD(RTL验证标准)
  12. Python 关于整除以及负数取余遇到的问题
  13. RN8209C单相电量计量芯片调试记录
  14. cad在哪里设置图幅大小_CAD的图纸大小的设置
  15. essp8266------mqtt服务器搭建
  16. 数据分析思维九段路线图
  17. 招商银行资金管理解决方案
  18. 树莓派pico mpu6050 一阶互补滤波四元数法 解算姿态角
  19. 新视野视听说教程2答案
  20. 删除链表中值相同的多余元素

热门文章

  1. 网络营销之qq群推广技巧
  2. 游戏互动神器,捏脸二维码是什么鬼?
  3. 风琴html插件,简洁实用的BootStrap jQuery手风琴插件
  4. 爆品分析第5期 | 一条视频带货3700+,这款斋月不锈钢厨具套装火了!
  5. 线上故障之-数据库问题
  6. 【转】iPhone X
  7. Python:电影场次查询API
  8. 苏州:宝俭堂 隐匿太湖之滨的千年私家园林
  9. Java多线程入门二
  10. 手机端静态网页制作需要注意的几个问题