MySQL是一個關系型數據庫管理系統,其中SQL指的是一種結構化語言,用于操作關系型數據庫的專用數據庫語言。而關系型數據庫又是什麼意思呢,關系型數據庫就是指在關系模型的基礎上建立起來的數據庫,是一種借助了集合代數等一些數學方法和數學概念進行數據處理的數據庫。
MySQL數據庫相比較其他數據庫而言體積小,速度快,性價比相對較高,深受多數的中小型網站開發者喜愛,尤其是該數據庫的源碼開放,很多企業選擇MySQL數據庫作為網站數據庫使用。
另外MySQL數據庫同時也支持市面上多數的操作系統,這也為數據庫的使用和維護提供了便利。
下面為大家介紹一個MySQL數據庫數據恢複的案例過程No.1:環境部署與故障原因:客戶本地服務器,操作系統為windows2008 r2 。在當前環境内安裝有mysql5.6單實例,引擎類型為innodb,表内數據存儲所使用表空間類型為獨立表空間。未進行數據庫備份,未開啟binlog。由于人為誤操作使用Delete命令進行删除數據時未添加where子句進行篩選導緻全表數據被删除,删除後未對該表進行任何操作。
No.2:恢複方案制定:
1、故障類型分類:在本案例中,由于未對生産環境進行備份也未開啟binlog日志,無法直接還原數據庫,屬于典型表内mysql-delete數據誤删除。
2、故障分析與可行性方案制定:對于mysql innodb誤删除導緻記錄丢失的恢複方案有三種,分别是備份還原、binlog還原和記錄深度解析。對于本案例前兩種方案不适用,隻能使用記錄深度解析的方式進行恢複。此恢複方案恢複原理為模拟innodb引擎記錄管理方式,根據表結構信息将二進制文件解析為字符記錄。
No.3:數據恢複流程:
1、獲取數據文件:客戶将表結構文件及表數據文件(.ibd)通過網絡傳輸的方式發送到本公司郵箱,工程師下載文件。
2、使用恢複工具進行恢複:
在本案例中客戶提供了表結構腳本,可以使用本工具中的5 3功能進行恢複。
首先讀取表結構信息:
開始解析記錄:
本工具默認将記錄提取為SQL備份格式,等待解析完畢後還原到數據庫查看結果(為保障客戶隐私關鍵信息已打碼):
No.4:客戶驗收數據:
随機挑選表内數據交由客戶驗證,并統計恢複記錄總數。客戶驗證後表示樣例數據正确,總數符合原表内記錄條數,恢複成功。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!