前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用k3s 恢复数据库(前提有完整的数据库数据文件)

使用k3s 恢复数据库(前提有完整的数据库数据文件)

作者头像
兜兜毛毛
发布2020-04-30 15:56:33
7330
发布2020-04-30 15:56:33
举报
文章被收录于专栏:兜兜毛毛
背景介绍

前几天在部署k3s相关服务时,不小心把操作系统整坏了。导致无法启动,磁盘上还有我的一些重要数据。

机器有两块硬盘,一个256G固态硬盘,一个2T机械硬盘。之前我是双系统安装,固态安装的是Windows、机械安装的是kali linux。(PS:双系统,直接修改启动引导就可以切换系统)

为了保证我机械硬盘数据,把新的linux系统安装在了固态硬盘中。

起因

系统启动后先把k3s相关的服务搭建好,这时候我才发现我的数据之前还是在系统安装应用,主要是之前的数据库无法启动,而老的数据库又无法启动。所以优先想办法恢复数据库。

所以这次准备彻底抛弃系统中安装各种应用服务,全部转用k3s搭建。

辗转反侧

一开始在网上找了很多的innodb的数据回复文章,并按照文章的说明进行操作,但没成功。

醒悟

上边找到的这些数据恢复的前提是,你只有.frm 、.ibd 、ibdata1文件的情况。但我的情况不是,我保留有所有数据库下的数据文件。所以上边走的比较多的弯路,耽误了好几天。

所以我只要用k3s启动一个相应的数据库,把机械硬盘上的数据复制到k3s指定的数据目录就可以了。为保证服务可以正确运行,需要启动的服务版本与之前的版本相同。

但是遇到一个弱智的问题,就是我把之前安装的数据库版本忘记了,现在也没办法通过version函数获取。

代码语言:javascript
复制
# 可以通过查看该文件确认数据库版本号
cat /var/lib/mysql/mysql_upgrade_info

上边的方式,已确认到我的版本号是《10.1.29-mariadb》

接下来通过配置一个镜像版本为mariadb:10.1.29的服务,并将历史的/var/lib/mysql复制到挂在的目录中。

启动mariadb服务,数据恢复成功,和之前的效果一样。

注:先将数据文件复制到数据目录后再启动

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景介绍
  • 起因
  • 辗转反侧
  • 醒悟
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档