數(shù)據(jù)庫數(shù)據(jù)恢復(fù)環(huán)境:
一臺本地windows sever操作系統(tǒng)服務(wù)器,服務(wù)器上部署mysql數(shù)據(jù)庫單實(shí)例,引擎類型為innodb,表內(nèi)數(shù)據(jù)存儲所使用表空間類型為獨(dú)立表空間。無數(shù)據(jù)庫備份,未開啟binlog。
數(shù)據(jù)庫故障&分析:
工作人員在執(zhí)行Delete命令刪除數(shù)據(jù)時(shí)未添加where子句進(jìn)行篩選,導(dǎo)致全表數(shù)據(jù)被刪除,刪除后未對該表進(jìn)行其他操作。
在本案例中,由于mysql數(shù)據(jù)庫沒有備份也未開啟binlog日志,無法直接還原數(shù)據(jù)庫。
針對引擎類型為innodb的mysql 數(shù)據(jù)庫誤刪除導(dǎo)致記錄丟失的數(shù)據(jù)恢復(fù)方案有三種:備份還原、binlog還原和記錄深度解析還原。對于本案例來說前兩種方案不適用,只能使用記錄深度解析的方案恢復(fù)刪除的數(shù)據(jù)。此方案原理:模擬innodb引擎記錄管理方式,根據(jù)表結(jié)構(gòu)信息將二進(jìn)制文件解析為字符記錄。
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)流程:
1、用戶方將表結(jié)構(gòu)文件及表數(shù)據(jù)文件(.ibd)發(fā)送給數(shù)據(jù)庫數(shù)據(jù)恢復(fù)工程師。
2、北亞企安數(shù)據(jù)恢復(fù)工程師團(tuán)隊(duì)針對此類mysql數(shù)據(jù)庫(innodb引擎,無備份,binlog未開啟)誤刪除故障進(jìn)行過深入研究,開發(fā)了針對此類故障的mysql數(shù)據(jù)庫數(shù)據(jù)恢復(fù)工具。使用這個(gè)北亞企安自主研發(fā)的mysql數(shù)據(jù)庫數(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ù)庫并查看結(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文章
585瀏覽量
17632 -
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3846瀏覽量
64686 -
MySQL
+關(guān)注
關(guān)注
1文章
829瀏覽量
26743
發(fā)布評論請先 登錄
相關(guān)推薦
MySQL數(shù)據(jù)庫的安裝
![<b class='flag-5'>MySQL</b><b class='flag-5'>數(shù)據(jù)庫</b>的安裝](https://file1.elecfans.com/web3/M00/05/E2/wKgZPGeF2XWAe83fAAAW9lhgvGk652.jpg)
SqlServer數(shù)據(jù)恢復(fù)—SqlServer數(shù)據(jù)庫數(shù)據(jù)恢復(fù)案例
![SqlServer<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—SqlServer<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file1.elecfans.com/web2/M00/AD/00/wKgZomU_TAiAULRtAAEKTBEQ2Pg592.png)
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—Mysql數(shù)據(jù)庫表記錄丟失的數(shù)據(jù)恢復(fù)流程
![<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—<b class='flag-5'>Mysql</b><b class='flag-5'>數(shù)據(jù)庫</b>表<b class='flag-5'>記錄</b>丟失的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>流程](https://file.elecfans.com/web2/M00/7B/26/pYYBAGNzCiiANj77AAH4iOB3xKM259.png)
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—MYSQL數(shù)據(jù)庫ibdata1文件損壞的數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—通過拼接數(shù)據(jù)庫碎片恢復(fù)SQLserver數(shù)據(jù)庫
![<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—通過拼接<b class='flag-5'>數(shù)據(jù)庫</b>碎片<b class='flag-5'>恢復(fù)</b>SQLserver<b class='flag-5'>數(shù)據(jù)庫</b>](https://file1.elecfans.com/web1/M00/F4/07/wKgaoWcjE32AbQdWAAJD_hojvJc119.png)
Oracle數(shù)據(jù)恢復(fù)—異常斷電后Oracle數(shù)據(jù)庫啟庫報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例
![Oracle<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—異常斷電后Oracle<b class='flag-5'>數(shù)據(jù)庫</b>啟<b class='flag-5'>庫</b>報(bào)錯(cuò)的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file1.elecfans.com/web2/M00/08/B8/wKgZomb6Ns-AbiICAAFlXAFpKKU086.png)
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫文件system01.dbf損壞的數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—Oracle<b class='flag-5'>數(shù)據(jù)庫</b>文件system01.dbf損壞的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file1.elecfans.com//web2/M00/06/BC/wKgZombqY1-AbIlmAAA0fq5EyZY308.jpg)
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫出現(xiàn)823錯(cuò)誤的數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—SQL Server<b class='flag-5'>數(shù)據(jù)庫</b>出現(xiàn)823錯(cuò)誤的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file1.elecfans.com/web2/M00/07/F4/wKgaombs78mANJ1GAAPeSoXHVPE244.png)
Oracle數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫delete刪除的數(shù)據(jù)恢復(fù)方法
NetApp數(shù)據(jù)恢復(fù)—NetApp存儲誤刪除的數(shù)據(jù)恢復(fù)案例
![NetApp<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—NetApp存儲<b class='flag-5'>誤刪除</b>的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file.elecfans.com/web2/M00/AE/D5/pYYBAGSdOliAdIbSAAKbpHzE5Cs839.png)
虛擬機(jī)數(shù)據(jù)恢復(fù)—KVM虛擬機(jī)被誤刪除的數(shù)據(jù)恢復(fù)案例
![虛擬機(jī)<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—KVM虛擬機(jī)被<b class='flag-5'>誤刪除</b>的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file.elecfans.com/web2/M00/AD/F3/poYBAGSadTWACtx5AANUKGY87Ws406.png)
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SqlServer數(shù)據(jù)庫底層File Record被截?cái)酁?的數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—SqlServer<b class='flag-5'>數(shù)據(jù)庫</b>底層File Record被截?cái)酁?的<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file.elecfans.com/web2/M00/AD/92/pYYBAGSRTBOAJcT3AATg2PM85Ok126.png)
Oracle數(shù)據(jù)恢復(fù)—Oracle刪除數(shù)據(jù)不用怕!這些數(shù)據(jù)恢復(fù)方法了解一下
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫所在分區(qū)空間不足報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—raid5陣列上層Sql Server數(shù)據(jù)庫數(shù)據(jù)恢復(fù)案例
![<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>—raid5陣列上層Sql Server<b class='flag-5'>數(shù)據(jù)庫</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>恢復(fù)</b>案例](https://file.elecfans.com/web2/M00/A2/AD/pYYBAGRLbSSAHhFWAAI9vWNRQec919.png)
評論