本文作者:kris

MySQL 数据恢复的多种方法汇总-mysql 数据恢复的多种方法汇总表

kris 2025-01-21 02:42:04 3
MySQL 数据恢复的多种方法汇总-mysql 数据恢复的多种方法汇总表摘要: mysql数据库有什么好的备份还原工具?数据备份是数据容灾的最后一道防线,即便有着两地三中心的架构,备份也依然重要。如果备份出问题,备份时影响了交易业务,备份数据无法恢复,这些也是...

mysql数据库有什么好的备份还原工具?

数据备份是数据容灾的最后一道防线,即便有着两地三中心的架构,备份也依然重要。如果备份出问题,备份时影响了交易业务,备份数据无法恢复,这些也是企业难以承受的。所以选择合适的备份工具尤为重要。

每个企业级数据库都会有配套的备份工具,MEB(MySQL Enterprise Backup)就是MySQL企业版中非常重要的工具之一,是为企业级客户提供的数据备份方案。

Xtrabackup一直作为MEB 开源版备胎而存在,从MySQL 8.0开始情况可能会变得有所不同。

MySQL 数据恢复的多种方法汇总-mysql 数据恢复的多种方法汇总表

图片来源:网络

在 MySQL 8.0的Backup Lock、Redo Log Archiving、Page Tracking等新特性的加持下,MEB备份/恢复体验会更好,目前xtrabackup还不支持这些特性。

mysql中drop的表能恢复吗?

情况1、如果你有该库的整体备份或对这个表的单独备份,那么也许可以恢复。可以将最新的备份恢复到一个备用的服务器上,导出那表的内容,完成恢复情况2、如果没有任何备份,那就基本没戏了。一般删除表的操作是drop table,日志中不会记录删除具体行数的记录。表所对应目录下的文件已经被删除(innodb独立表空间,单表归为一文件)。

同样的情况适用于myisam数据库引擎,对应的myd/myi/frm文件均被删除。

这不像windows还有垃圾箱,是不可逆的操作此外,对数据库最危险的操作就是对表进行删除行、删除表或删库的操作了,所以任何对数据库有高危风险的操作前最重要的就是备份!备份!再备份!

MySQL的数据如何恢复到任意时间点?

恢复数据库到之前的某个时间点,必须要有日志备份。下面是一个使用日志的示例: create database db1 go alter database db1 set recovery full go backup database db1 to disk='db1.bak' with init--首先要对数据库进行全备份,否则checkpoint会阶段inactive的日志(类似于simple recovery) go use db1 go create table t(col int) go ---一些数据库操作 ---一些数据库操作 ---一些数据库操作 --假设你在15点15分以后删除了这个表 drop table t --如果想恢复这个表,需要对数据库进行日志备份 use master go backup log db1 to disk='db1.trn' with norecovery go ---然后执行以下操作 use master go restore database db1 from disk='db1.bak' with norecovery go restore log db1 from disk='db1.trn' with recovery,stopat='2009-03-08 15:15:00'--这时,数据库恢复到15:15的状态。

文章版权及转载声明

作者:kris本文地址:https://www.damoyx.com/p/25464.html发布于 2025-01-21 02:42:04
文章转载或复制请以超链接形式并注明出处大漠游侠网

阅读
分享