自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

MySQL誤刪數(shù)據(jù)?快速恢復(fù)指南來了!

數(shù)據(jù)庫 MySQL
如果身邊有BDA或者有這方面經(jīng)驗(yàn)的同事那么可以很快解決這個(gè)問題,如果沒有那么希望這篇文章可以幫到你。

 相信后端研發(fā)的同學(xué)在開發(fā)過程經(jīng)常會遇到產(chǎn)品臨時(shí)修改線上數(shù)據(jù)的需求,如果手法很穩(wěn)那么很慶幸可以很快完成任務(wù),很不幸某一天突然手一抖把表里的數(shù)據(jù)修改錯(cuò)誤或者誤刪了,這個(gè)時(shí)候你會發(fā)現(xiàn)各種問題反饋接踵而來。

如果身邊有BDA或者有這方面經(jīng)驗(yàn)的同事那么可以很快解決這個(gè)問題,如果沒有那么希望這篇文章可以幫到你。

第一步:保證mysql已經(jīng)開啟binlog,查看命令:

查看binklog是否開啟 

  1. show variables like '%log_bin%'; 

查看binlog存放日志文件目錄(如下圖,博主binlog目錄為/data/mysql): 

  1. show variables like '%datadir%'; 

值為OFF,需開啟,值為ON,已開啟。

如果沒有開啟binlog,也沒有預(yù)先生成回滾SQL,那可能真的無法快速回滾了。對存放重要業(yè)務(wù)數(shù)據(jù)的MySQL,強(qiáng)烈建議開啟binlog。

第二步:進(jìn)入binlog文件目錄,找出日志文件

第三步:切換到mysqlbinlog目錄(當(dāng)線上數(shù)據(jù)出現(xiàn)錯(cuò)誤的時(shí)候首先可以詢問具體操作人記錄時(shí)間點(diǎn),這個(gè)時(shí)候可以借助mysql自帶的binlog解析工具mysqlbinlog,具體位置在mysql安裝目錄**/mysql/bin/下)

第四步:通過mysqlbinlog工具命令查看數(shù)據(jù)庫增刪改查記錄(必須切換到mysqlbinlog目錄才有效)

例子1:查詢2018-11-12 09:00:00到2018-11-13 20:00:00 數(shù)據(jù)庫為 youxi 的操作日志,輸入如下命令將數(shù)據(jù)寫入到一個(gè)備用的txt文件中 

  1. mysqlbinlog --no-defaults --database=youxi --start-datetime="2018-11-12 09:00:00" --stop-datetime="2018-11-13 20:00:00" /data/mysql/mysql-bin.000015    > template_coupon_tb_product_category.txt 

例子2:查詢2018-11-12 09:00:00到2018-11-13 20:00:00 數(shù)據(jù)庫為 youxi 的操作日志,并輸出到屏幕上 

  1. mysqlbinlog --no-defaults --database=youxi --start-datetime="2018-11-12 09:00:00" --stop-datetime="2018-11-13 20:00:00" /data/mysql/mysql-bin.000015   |more 

例子3:查詢2018-11-12 09:00:00到2018-11-13 20:00:00 數(shù)據(jù)庫為 youxi 的操作日志,并且過濾出 只包括 template_coupon_tb_product_category 表數(shù)據(jù)的操作記錄 ,輸入如下命令將數(shù)據(jù)寫入到一個(gè)備用的txt文件中 

  1. mysqlbinlog --no-defaults --database=youxi --start-datetime="2018-11-12 09:00:00" --stop-datetime="2018-11-13 20:00:00" /data/mysql/mysql-bin.000015   | grep template_coupon_tb_product_category   > template_coupon_tb_product_category.txt 

 

  1. mysqlbinlog 命令的語法格式:  
  2. mysqlbinlog mysql-bin.0000xx | mysql -u用戶名 -p密碼 數(shù)據(jù)庫名  
  3. --------------------------------------------------------  
  4. 常用參數(shù)選項(xiàng)解釋:  
  5. --start-position=875 起始pos點(diǎn)  
  6. --stop-position=954 結(jié)束pos點(diǎn)  
  7. --start-datetime="2016-9-25 22:01:08" 起始時(shí)間點(diǎn)  
  8. --stop-datetime="2019-9-25 22:09:46" 結(jié)束時(shí)間點(diǎn)  
  9. --database=zyyshop 指定只恢復(fù)zyyshop數(shù)據(jù)庫(一臺主機(jī)上往往有多個(gè)數(shù)據(jù)庫,只限本地log日志)  
  10. --------------------------------------------------------   
  11. 不常用選項(xiàng):   
  12. -u --user=name 連接到遠(yuǎn)程主機(jī)的用戶名  
  13. -p --password[=name] 連接到遠(yuǎn)程主機(jī)的密碼  
  14. -h --host=name 從遠(yuǎn)程主機(jī)上獲取binlog日志  
  15. --read-from-remote-server 從某個(gè)MySQL服務(wù)器上讀取binlog日志 

第五步:利用第四步輸出的sql語句或者txt文本進(jìn)行語句過濾,重新插入數(shù)據(jù)或更新數(shù)據(jù) 

 

責(zé)任編輯:龐桂玉 來源: Java知音
相關(guān)推薦

2023-09-01 21:12:13

GPT3.5模型微調(diào)

2019-02-13 19:45:52

MySQL數(shù)據(jù)庫誤刪數(shù)據(jù)

2024-09-10 08:10:50

2024-03-01 13:49:00

數(shù)據(jù)訓(xùn)練

2017-04-01 18:30:47

MySQL誤刪除數(shù)據(jù)庫

2022-12-01 14:02:02

MySQL數(shù)據(jù)文件

2018-04-28 15:28:44

數(shù)據(jù)庫MySQL誤刪除

2017-07-14 15:49:05

MongoDB誤刪表恢復(fù)步驟

2024-08-09 10:06:09

2018-11-26 09:55:07

MySQL誤刪數(shù)據(jù)數(shù)據(jù)庫

2017-10-26 10:25:07

數(shù)據(jù)恢復(fù)服務(wù)

2020-08-07 18:22:14

人工智能AI標(biāo)準(zhǔn)體系

2019-08-20 14:02:07

MongoDB數(shù)據(jù)庫恢復(fù)數(shù)據(jù)

2018-10-08 11:29:10

2024-01-05 13:13:40

2022-02-09 17:29:36

Windows 11新系統(tǒng)微軟

2017-05-31 16:10:45

MySQL誤操作恢復(fù)數(shù)據(jù)

2023-03-02 11:42:48

CPU芯片

2019-07-22 09:55:43

誤刪數(shù)據(jù)庫用戶庫

2024-04-22 08:17:23

MySQL誤刪數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號