阿里云mysql数据丢失,如何通过服务器备份在其他服务器上恢复数据,并获取mysql丢失数据,完成mysql数据恢复

一、问题场景

我的一个服务器,自己安装的mysql服务,但是没有定期对mysql数据进行数据库级别的备份,只有对整个阿里云服务器的每日备份,某一天突然误删了一个表的数据,由于没有进行数据库备份,现在无法恢复数据,只能依靠服务器备份恢复当天的数据,因为我只想要当天mysql数据库中丢失的哪个一个表的数据,并不是直接回滚服务器的全部数据恢复到创建快照时的状态。

二、解决过程

1、利用快照创建磁盘挂载到主机,然后拷贝出需要的数据,(就是利用快照,找一个别的主机空闲磁盘,把快照数据恢复到该服务器磁盘上,然后从该磁盘数据中夫指出我想要的表数据)

使用快照创建云盘:使用快照创建新云盘实现数据复制_云服务器 ECS(ECS)-阿里云帮助中心

挂载磁盘:将按量付费云盘挂载到ECS实例作为数据盘使用_云服务器 ECS(ECS)-阿里云帮助中心

2、在新的服务器磁盘上,重新安装一个mysql服务器。安装服务器后,需要修改MySQL配置文件my.cnf 文件,更改mysql的数据目录为原数据库目录(只修改datadir为恢复的mysql数据目录即可):

把数据目录更改到mytemp下,其他配置都不改,还是新安装的mysql服务的默认目录:

复制代码
[mysqld]
#datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

datadir=/mytemp/mysql/data
#socket=/mytemp/mysql/data/mysql.sock

skip-grant-tables
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid

#
# include all files from the config directory
#
!includedir /etc/my.cnf.d

3、登录mysql,导出丢失表对应的数据库全部数据(具体命令,可以百度一下):

4、卸载掉这个磁盘,然后释放云盘 释放云盘您可以参考文档释放云盘_云服务器 ECS(ECS)-阿里云帮助中心 注:释放云盘时,云盘上的数据会被删除,建议您提前备份好数据。

复制代码
umount /dev/vdd1

三、总结

mysql数据库还是要经常备份一下,特别是那种配置数据,自己要经常备份,避免数据库数据丢失或者误删、误操作,导致的数据丢失。

而本文的这种恢复方式,是没有数据库备份,但是有阿里云每天的服务器备份的情况下,通过恢复服务器数据,并安装新的mysql服务,通过更改mysql的数据目录,实现新的mysql服务直接访问旧的mysql数据,从来将自己丢失的数据导出来,实现恢复mysql数据的方案。

相关推荐
身如柳絮随风扬5 小时前
MySQL核心知识
数据库·mysql
551只玄猫6 小时前
【数据库原理 实验报告1】创建和管理数据库
数据库·sql·学习·mysql·课程设计·实验报告·数据库原理
q5431470876 小时前
MySQL SQL100道基础练习题
数据库·mysql
xdscode6 小时前
Linux云服务器安装openclaw,并对接飞书通道
linux·服务器·飞书·openclaw
lswzw7 小时前
win11家庭版 安装 openclaw
服务器
zhoupenghui1687 小时前
mysql 中如果条件where中有or,则要求or两边的字段都必须有索引,否则不能用到索引, 为什么?
数据库·mysql·索引
LegendNoTitle7 小时前
计算机三级等级考试 网络技术 选择题考点详细梳理
服务器·前端·经验分享·笔记·php
2401_877274247 小时前
从匿名管道到 Master-Slave 进程池:Linux 进程间通信深度实践
linux·服务器·c++
feng_you_ying_li8 小时前
linux之用户的权限详解(4)
linux·运维·服务器
eggwyw8 小时前
完美解决phpstudy安装后mysql无法启动
数据库·mysql