數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)環(huán)境:
一臺(tái)本地windows sever操作系統(tǒng)服務(wù)器,服務(wù)器上部署mysql數(shù)據(jù)庫(kù)單實(shí)例,引擎類型為innodb,表內(nèi)數(shù)據(jù)存儲(chǔ)所使用表空間類型為獨(dú)立表空間。無數(shù)據(jù)庫(kù)備份,未開啟binlog。
數(shù)據(jù)庫(kù)故障&分析:
工作人員在執(zhí)行Delete命令刪除數(shù)據(jù)時(shí)未添加where子句進(jìn)行篩選,導(dǎo)致全表數(shù)據(jù)被刪除,刪除后未對(duì)該表進(jìn)行其他操作。
在本案例中,由于mysql數(shù)據(jù)庫(kù)沒有備份也未開啟binlog日志,無法直接還原數(shù)據(jù)庫(kù)。
針對(duì)引擎類型為innodb的mysql 數(shù)據(jù)庫(kù)誤刪除導(dǎo)致記錄丟失的數(shù)據(jù)恢復(fù)方案有三種:備份還原、binlog還原和記錄深度解析還原。對(duì)于本案例來說前兩種方案不適用,只能使用記錄深度解析的方案恢復(fù)刪除的數(shù)據(jù)。此方案原理:模擬innodb引擎記錄管理方式,根據(jù)表結(jié)構(gòu)信息將二進(jìn)制文件解析為字符記錄。
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)流程:
1、用戶方將表結(jié)構(gòu)文件及表數(shù)據(jù)文件(.ibd)發(fā)送給數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)工程師。
2、北亞企安數(shù)據(jù)恢復(fù)工程師團(tuán)隊(duì)針對(duì)此類mysql數(shù)據(jù)庫(kù)(innodb引擎,無備份,binlog未開啟)誤刪除故障進(jìn)行過深入研究,開發(fā)了針對(duì)此類故障的mysql數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)工具。使用這個(gè)北亞企安自主研發(fā)的mysql數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)工具來恢復(fù)數(shù)據(jù)。
北亞企安數(shù)據(jù)恢復(fù)——MySQL數(shù)據(jù)恢復(fù)
北亞企安數(shù)據(jù)恢復(fù)——MySQL數(shù)據(jù)恢復(fù)
本案例中用戶方提供了表結(jié)構(gòu)腳本,使用數(shù)據(jù)恢復(fù)工具中的5+3功能進(jìn)行恢復(fù)。
讀取表結(jié)構(gòu)信息:
北亞企安數(shù)據(jù)恢復(fù)——MySQL數(shù)據(jù)恢復(fù)
北亞企安數(shù)據(jù)恢復(fù)——MySQL數(shù)據(jù)恢復(fù)
解析記錄:
北亞企安數(shù)據(jù)恢復(fù)——MySQL數(shù)據(jù)恢復(fù)
本數(shù)據(jù)恢復(fù)工具默認(rèn)將記錄提取為SQL備份格式,解析完成后還原到數(shù)據(jù)庫(kù)并查看結(jié)果:
北亞企安數(shù)據(jù)恢復(fù)——MySQL數(shù)據(jù)恢復(fù)
3、隨機(jī)挑選表內(nèi)數(shù)據(jù)交由用戶方驗(yàn)證,并統(tǒng)計(jì)恢復(fù)記錄總數(shù)。用戶方經(jīng)過跨部門多方驗(yàn)證后確認(rèn)恢復(fù)數(shù)據(jù)完整正確,總記錄數(shù)符合原表內(nèi)記錄條數(shù)。本次數(shù)據(jù)恢復(fù)工作成功。
審核編輯 黃宇
-
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
627瀏覽量
17946 -
數(shù)據(jù)庫(kù)
+關(guān)注
關(guān)注
7文章
3884瀏覽量
65584 -
MySQL
+關(guān)注
關(guān)注
1文章
840瀏覽量
27344
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
分布式存儲(chǔ)數(shù)據(jù)恢復(fù)—虛擬機(jī)上hbase和hive數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—SQL Server附加數(shù)據(jù)庫(kù)提示“錯(cuò)誤 823”的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)——MySQL數(shù)據(jù)庫(kù)誤刪除表記錄的數(shù)據(jù)恢復(fù)案例

SqlServer數(shù)據(jù)恢復(fù)—SqlServer數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—Mysql數(shù)據(jù)庫(kù)表記錄丟失的數(shù)據(jù)恢復(fù)流程

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—MYSQL數(shù)據(jù)庫(kù)ibdata1文件損壞的數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—通過拼接數(shù)據(jù)庫(kù)碎片恢復(fù)SQLserver數(shù)據(jù)庫(kù)

Oracle數(shù)據(jù)恢復(fù)—異常斷電后Oracle數(shù)據(jù)庫(kù)啟庫(kù)報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫(kù)文件system01.dbf損壞的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫(kù)出現(xiàn)823錯(cuò)誤的數(shù)據(jù)恢復(fù)案例

Oracle數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫(kù)delete刪除的數(shù)據(jù)恢復(fù)方法
虛擬機(jī)數(shù)據(jù)恢復(fù)—KVM虛擬機(jī)被誤刪除的數(shù)據(jù)恢復(fù)案例

Oracle數(shù)據(jù)恢復(fù)—Oracle刪除數(shù)據(jù)不用怕!這些數(shù)據(jù)恢復(fù)方法了解一下
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫(kù)所在分區(qū)空間不足報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—raid5陣列上層Sql Server數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)案例

評(píng)論