有點要注意 如果你誤刪了表 想通過這個恢復 必須恢復日志里面有創建表的日志 不然的話是無法回復的 ?就是必須是從你開始創建表的時候就已經記錄日志了? 恢復到哪個位置 就按照哪個位置來計算 mysql ?5.0不支持增量備份 增量備份定義 ? ? mysql數據庫會以二進
有點要注意 如果你誤刪了表 想通過這個恢復 必須恢復日志里面有創建表的日志 不然的話是無法回復的 ?就是必須是從你開始創建表的時候就已經記錄日志了?
恢復到哪個位置 就按照哪個位置來計算
mysql ?5.0不支持增量備份
增量備份定義
? ? mysql數據庫會以二進制形式 自動把用戶對mysql數據庫的操作 記錄到文件 當用戶希望恢復的時候可以使用備份文件 進行回復
? ? 增量備份會記錄 (dml 語句 建表語句 不會記錄select語句)
? ? 記錄的 (a 操作語句本身 b 操作的時間 ?c 操作的位置 position)
實例
? ? 配置 my.ini文件 或者 my.conf 啟用二進制備份
???log-bin=e:/mysqldb/logbin.log ? ?先設置mysql日志存放位置
? ? 配置好后 再啟動模樣上去了 就會在備份目錄多了2個文件?
? ? logbin.index ?這個是索引文件 有哪些增量備份
????logbin.000001 ? 存放用戶對數據庫操作的文件
? ? 如果你想看看 這個 里面是什么東西 我們可以使用 mysql的bin目錄下面的一個工具查看?
? ? 就是 mysqlbinlog.exe ?這個東西看?
????
? ? 首先用cmd進入 mysql的 bin目錄下面 然后執行
? ? mysqlbinlog e:/mysqldb/logbin.000001
????
mysql 對于你的每一次操作 都會記錄一次時間 同時 給你分配一個位置 (pos)
換句話說 以后我們恢復 可以根據時間點來恢復 或者根據位置來恢復
比如說 我們把一個表個drop 了 那么我們只要把表恢復到 drop之前就好了?
時間點恢復
? ? 我們可以畫個流程圖
? ? logbin.000001
? ? insert ...... ? 3 ? ? ? 2013-07-23 17:57:00
? ? update ..... ? 4 ? ?2013-07-23 17:59:00
?????insert ...... ? 100 ? ? ? 2013-07-23 19:57:00
? ? drop ?... ? ? ? ?101 ? ?2013-07-23 20:57:00
????
? ? 恢復的話可以這么寫
? ? mysqlbinlog ?--stop-datatime="2013-07-23 20:50:00"?e:/mysqldb/logbin.000001
? ? 上面這句的意思是 一直恢復到?2013-07-23 20:50:00 ?停止
?????mysqlbinlog ?--start-datatime="2013-07-23 20:50:00"?e:/mysqldb/logbin.000001
? ? 上面這句的意思是 從2013-07-23 20:50:00 ?開始恢復
按照位置來恢復
??????? mysqlbinlog ?--stop-position="100"?e:/mysqldb/logbin.000001? |?
????? ? 上面這個語句意思是 恢復到100的位置
真實性恢復
按照位置恢復
mysqlbinlog ?--stop-position=4590?e:/mysqldb/logbin.000001? | mysql -uroot -p
按照時間恢復
mysqlbinlog ?--stop-datetime="2013-07-24 18:17:19"?e:/mysqldb/logbin.000001? | mysql -uroot -p
可以控制從什么時候開始 到什么是結束
mysqlbinlog?--start -position=4? --stop-position=106
yueliangd
ao_binglog.000001 > c:\\test1.txt
在工作中 可以每周一做一個全備份 就是 mysqldump ?
然后 啟用我們的增量備份 把過期時間設為 大于等于7天
如果數據庫崩潰了 就可以通過時間和位置來恢復
如何關閉 mysql 自動記錄日志
找到log-bin=mysql-bin,前面添加#即可。
個別版本需要關閉
binlog_format=mixed前面添加#,否則會出現mysql無法啟動。
作者:ebw123 發表于2013-7-24 22:27:12 原文鏈接
閱讀:109 評論:0 查看評論
原文地址:mysql實現增量備份, 感謝原作者分享。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com