您好,登錄后才能下訂單哦!
進入數(shù)據(jù)庫操作,難免會出現(xiàn)一些誤操作。這時就需要我們對數(shù)據(jù)進行恢復。一下介紹一下如何將表中的內容刪除后進行恢復的過程。
首先我們模擬一下實驗環(huán)境:
將數(shù)據(jù)庫安裝好之后進入到/etc/my.cnf中
查看是否啟用了日志功能(數(shù)據(jù)恢復是根據(jù)日志來進行恢復的。)
在此環(huán)境已經(jīng)設置好了。
之后進入數(shù)據(jù)庫中新建一個庫命名未vianet_bss
進入庫中并新建一個表命名為stb_active
create table stb_active (SERVER_ID char(5),SERVER_CODE char(10),SERVER_NAME char(20),SERVER_DESC char(10),STATE char(5));
然后插入幾條數(shù)據(jù)
insert into可插入數(shù)據(jù),之后表中出現(xiàn)幾條數(shù)據(jù)后我們的數(shù)據(jù)創(chuàng)建成功。
然后我們利用delete from stb_active where SERVER_ID=2我們將ID為2的內容給刪除,待會將它恢復。
再次查看ID為2的內容已經(jīng)沒有了
之后我們利用ps -ef | grep mysql檢查到MySQLdata的位置位于何處,mysql-bin是放于data目錄之下的。
然后進入到data目錄中找到最新的那條日志查看一下。當然是亂碼的需要轉換成.sql后可以看見內容。
mysqlbinlog -u root -p123.com mysql-bin.000006 > /opt/backup/4.sql
然后vim /opt/backup/4.sql
找到相應的時間段,我們是在什么時候將內容刪除的。
然后找到剛才我們執(zhí)行刪除內容的命令
并將它刪除掉,此時不能進行還原如果到這里你執(zhí)行了還原的話會有數(shù)據(jù)重復。所以我們要將不是我們要還原的數(shù)據(jù)給刪除掉。避免重復,但要保證和數(shù)據(jù)庫里面的數(shù)據(jù)要一致。
以下是沒有將有效的數(shù)據(jù)從日志中刪除導致的結果
之后我將這里面的數(shù)據(jù)全部刪除最后重新導入一份數(shù)據(jù)進入數(shù)據(jù)恢復完成。
此實驗到此結束。
第一次發(fā)表寫的不是太好,還望多指教。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。