MySQL利用binlog增量恢復資料庫

2021-09-11 22:35:31 字數 1116 閱讀 1472

資料庫中表被誤刪除 恢復方法

首先分析表是否重要

1 重要的情況處理

1 停服務,掛維護頁面,保證資料一致性

2 找乙個新的資料庫做恢復測試,同時對故障庫進行備份

3 恢復前日備份,恢復完畢後 拷貝 binlog過來

4 查詢binlog位置,獲取故障前一刻binlog位置 追binlog

5 啟動測試

6 對外啟動服務

要確保我們有之前的備份,要已經了開啟binlog日誌

檢視當前使用的binlog日誌

先手動切割出乙份binlog讓所有資料寫到新的binlog上面

mysqladmin -uroot -p flush-log

檢視position號,

全備的時候加了master-data=2 在備份中會有pos號,表示這次備份到這個pos號結束

把binlog二進位制檔案匯出成sql語句,把錯誤語句排除

從備份檔案中找到最後pos號,在binlog備份時,從此pos號開始

mysqlbinlog --skip-gtids --start-position=194–stop-position=1519 -d he /data/binlog/mysql-bin.000006 >/backup/bin.sql

-d 只匯出指定庫的sql語句

如果開啟了gtid 則必須要加上–skip-gtids引數

或找出並刪除錯誤語句

mysqlbinlog --skip-gtids -d he /data/binlog/mysql-bin.000006 >/backup/bin.sql

vim bin.sql

把出問題的sql語句刪除掉

恢復最近一次備份

mysql -uroot -p he < /tmp/all_bak.sql

把修改好的資料匯入

mysql>source bin.sql

binlog增量資料代替Dump DB增量解決方案

背景介紹 試用報告資料在db底層打通評價資料,報告資料就分散到評價的32個資料庫,2048張表裡。因為基本的業務需求是打通資料並且將報告接入搜尋。為了考慮業務靈活性,選擇終搜平台來完成報告的全量和增量。全量模組通過tsearch 基於評價以及ic的雲梯表,join做的全量dump。因為增量通過sql...

mysql使用binlog實現增量備份指令碼

使用binlong日誌實現mysql的增量備份 root mysqltest cat a.sh bin bash bakdir mnt 備份檔案存放的路徑 bindir data mysql log binlog日誌的路徑 logfile data mysql log bak.log 日誌存放路徑 ...

Mysql利用bin log進行資料恢復

mysql利用bin log進行資料恢復 線上的資料都很重要,但也會難免有時候有誤刪除的操作,這時候要在第一時間進行資料恢復。首先,要確保mysql開啟了binlog日誌功能,在 etc my.cnf檔案裡的 mysqld 區塊新增 log bin mysql bin。然後重啟mysql服務。將備份...