国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

mysql5.7使用binlog 恢復數據的方法

瀏覽:4日期:2023-10-02 11:27:53
第一步:保證mysql已經開啟binlog

show variables like ’%log_bin%’;log_bin 為 on是開啟。

mysql5.7使用binlog 恢復數據的方法

第二步:進入binlog文件目錄,找到二進制日志文件

mysql5.7使用binlog 恢復數據的方法

mysql> show binary logs; #獲取binlog文件列表mysql> show master status; #查看當前正在寫入的binlog文件mysql> reset master; 重置binlog

mysql5.7使用binlog 恢復數據的方法

第三步: 通過mysqlbinlog工具命令查看數據庫增刪改查記錄(必須切換到mysqlbinlog目錄才有效)或者直接指定binlog

例子1:查詢2021-3-12 14:00:00到2021-3-12 14:03:00 數據庫為 g_xinxiangshop的操作日志,輸入如下命令將數據寫入到一個備用的txt文件中

/usr/local/mysql/bin/mysqlbinlog --no-defaults --database=g_xinxiangshop --start-datetime=“2021-3-12 14:00:00” --stop-datetime=“2021-3-12 14:03:00” /usr/local/mysql/data/mysql-bin.000001 > /tmp/binlog.txt

例子2:查詢2021-3-12 14:00:00到2021-3-12 14:03:00 數據庫為 g_xinxiangshop的操作日志,并且過濾出 只包括 g_user表數據的操作記錄 ,輸入如下命令將數據寫入到一個備用的txt文件中

/usr/local/mysql/bin/mysqlbinlog --no-defaults --database=g_xinxiangshop --start-datetime=“2021-3-12 14:00:00” --stop-datetime=“2021-3-12 14:03:00” /usr/local/mysql/data/mysql-bin.000001 | grep g_user > /tmp/binlog.txt

例子3:查詢2021-3-15 15:25:00到2021-3-15 15:35:00 數據庫為 g_shoptest 的操作日志,并輸出到屏幕上/usr/local/mysql/bin/mysqlbinlog --no-defaults --database=g_shoptest --start-datetime=“2021-3-15 15:25:00” --stop-datetime=“2021-3-15 15:35:00” /data/mysql/mysql-bin.000001 |more

mysql5.7使用binlog 恢復數據的方法

圖片和例1、例2內容一樣 看到了truncate操作 和記錄點 就可以做恢復操作了!

第四步:測試利用bin_log恢復數據

登錄mysql測試

1、 reset master; 重置binlog并重新生成記錄日志

mysql5.7使用binlog 恢復數據的方法

2、 測試某個表 插入一條數據 然后不小心刪除了。

mysql5.7使用binlog 恢復數據的方法

mysql5.7使用binlog 恢復數據的方法

3、 查看bin-log 命令:show binlog events in ‘mysql-bin.000001’;

mysql5.7使用binlog 恢復數據的方法

如上圖我們看到刪除點在928到 1294 ;之前的新增的數據 在154到520

mysql5.7使用binlog 恢復數據的方法

/usr/local/mysql/bin/mysqlbinlog /usr/local/mysql/data/mysql-bin.000001 --start-position 154 --stop-position 520 | mysql -uroot -p g_shoptest

執行完畢之后 去看看刪除那條數據吧 又回來了

mysql5.7使用binlog 恢復數據的方法

binlog命令

1.最長用的就是回復指定數據端的數據了,可以直接恢復到數據庫中:

mysqlbinlog --start-date='2021-3-12 14:00:00' --stop-date='2021-3-12 14:03:00' mysql_bin.000001 |mysql -uroot -p123456

2.指定開始結束位置,從上面的查看產生的binary log我們可以知道某個log的開始到結束的位置,我們可以在恢復的過程中指定回復從A位置到B位置的log.需要用下面兩個參數來指定:

--start-positon='50' //指定從50位置開始 --stop-postion='100'//指定到100位置結束

/usr/local/mysql/bin/mysqlbinlog /usr/local/mysql/data/mysql-bin.000001 --start-position 7903538 --stop-position 7904498|mysql -uroot -p123456

**常見錯誤 ERROR: Error in Log_event::read_log_event(): ‘Found invalid event in binary log’, data_len: 31, event_type: 35

*問題為mysqlbinlog版本所導致

查看當前os使用的mysqlbinlog

shell> which mysqlbinlog/usr/bin/mysqlbinlog

查看mysql當前使用的mysqlbinlog

±--------------±------------------+| Variable_name | Value |±--------------±------------------+| basedir | /usr/local/mysql/ |±--------------±------------------+

mysql> show variables like ‘basedir’;

對比兩個版本

shell> /usr/bin/mysqlbinlog --versionshell> /usr/local/mysql/bin/mysqlbinlog --version

解決此問題指定mysqlbinlog路徑即可

/usr/local/mysql/bin/mysqlbinlog --no-defaults --database=g_xinxiangshop --start-datetime=“2021-3-12 14:00:00” --stop-datetime=“2021-3-12 14:03:00” /usr/local/mysql/data/mysql-bin.000001 > /tmp/binlog.txt

到此這篇關于mysql5.7使用binlog 恢復數據的方法的文章就介紹到這了,更多相關mysql binlog 恢復數據內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 午夜香港三级a三级三点 | 国产在线观看一区二区三区四区 | 欧美一级片网址 | 性高湖久久久久久久久 | 久久久国产精品视频 | 久久久一区二区三区 | 亚洲国产中文字幕 | 99热久久国产综合精品久久国产 | 琪琪午夜伦埋大全影院 | 久久精品久久精品 | 东凛中文字幕 | 韩国美女爽快一级毛片黄 | 免费国产成人α片 | 在线不卡国产 | 男女交性拍拍拍高清视频 | 一级做性色a爰片久久毛片 一级做性色a爰片久久毛片免费 | a欧美 | 国产精品视频自拍 | 日韩欧美一级毛片在线 | 国产大臿蕉香蕉大视频女 | 国产成人精品午夜在线播放 | 伊人狼人综合 | 久久精品国产91久久综合麻豆自制 | 男人透女人超爽视频免费 | 久久久免费的精品 | 黄 色 三 片 | 一级免费 | 亚洲男人天堂手机版 | 六月成人网| 中国精品视频一区二区三区 | 欧美成人免费观看国产 | a级做爰片毛片视频 | 成人a站| 日韩一级一欧美一级国产 | 荡女妇边被c边呻吟久久 | 国产精品久久一区二区三区 | 久久99精品久久久久久综合 | 免费日韩在线视频 | 久久久久女人精品毛片 | 在线播放国产真实女同事 | 狠狠色狠狠色综合日日32 |