中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql備份恢復

發布時間:2020-05-28 15:49:46 來源:網絡 閱讀:949 作者:柴鑫旺 欄目:數據庫

             MYSQL備份恢復

MySQL備份一般采取全備份加日志備份的方式.

1binlog

mysql的二進制日志記錄著該數據庫的所有增刪改的操作日志, 可以使用mysqlbinlog命令來查看。

默認關閉的 /etc/my.conf 開啟 重啟

mysql備份恢復

指定路徑

mysql備份恢復

Binlog的用途 主從同步  恢復數據庫

查看產生的binary log 注:查看binlog內容是為了恢復數據
 bin-log因為是二進制文件,不能通過文件內容查看命令直接打開查看,mysql提供兩種方式查看方式,我們先對數據庫進行一下增刪改的操作,否則log里邊數據有點空。 

mysql備份恢復

重啟開始一個新日志

mysql備份恢復

查看MySQL Server上的二進制日志

mysql備份恢復

查看二進制日志信息的命令:

語法格式:SHOW BINLOG EVENTS[IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count]

mysql備份恢復

查看指定二進制日志事件


mysql備份恢復

mysql備份恢復

SLAVE復制線程。

查看到文件中具體的內容并應于恢復場景還得借助mysqlbinlog這個工具。

語法格式: mysqlbinlog [options] log_file ...

mysqlbinlog的可用選項可參考man手冊。

二進制日志文件的格式包含行模式、語句模式和混合模式基于語句的日志中事件信息包含執行的語句等,基于行的日志中事件信息包含的是行的變化信息等

 2 方便查詢SQL語句使用mysqlbinlog工具 -v --verbose選項,想看到更詳細的信息可以將該選項給兩次如-vv

先切換到binlog所在的目錄下

查看mysqlbinlog  000001目錄

mysql備份恢復

mysqlbinlog和可以通過--read-from-remote-server選項從遠程服務器讀取二進制日志文件,這時需要一些而外的連接參數,-h-P-p-u等,這些參數僅在指定了--read-from-remote-server后有效。

無論是行模式、語句模式還是混合模式的二進制日志文件,被mysqlbinlog工具解析后都可直接應用與MySQL Server進行基于時間點、位置或數據庫的恢復。

可以看出delete事件發生position287,事件結束position416

mysql備份恢復

恢復流程:直接用bin-log日志將數據庫恢復到刪除位置287,然后跳過故障點,再進行恢復

由于之前沒有做過全庫備份,所以要使用所有binlog日志恢復,所以生產環境中需要很長時間恢復,導出相關binlog文件

mysql備份恢復

刪除test數據庫

mysql備份恢復

利用binlog恢復數據

mysql備份恢復

恢復成功

mysql備份恢復

--start-datetime

從二進制日志中讀取指定時間戳或者本地計算機時間之后的日志事件。

--stop-datetime

從二進制日志中讀取指定時間戳或者本地計算機時間之前的日志事件。

--start-position        

從二進制日志中讀取指定position 事件位置作為開始。

--stop-position

從二進制日志中讀取指定position 事件位置作為事件截至。

mysqldump介紹

mysqldump一般在數據量很小的時候(幾個G)可以用于備份。當數據量比較大的情況下,就不建議用mysqldump工具進行備份了

 2mysqldump可以針對單個表、多個表、單個數據庫、多個數據庫、所有數據庫進行導出的操作

#mysqldump [options] db_name [tbl_name ...] //導出指定數據庫或單個表

#mysqldump [options] --databases db_name ... //導出多個數據庫

#mysqldump [options] --all-databases //導出所有

導出數據庫test

完整備份 重新開啟新binlog

mysql備份恢復

數據庫導入

mysql備份恢復

實現mysqldum全庫備份和binlog數據恢復

檢查開啟binlog  創建原始數據

mysql備份恢復

mysql備份恢復

方案:mysqldump全庫備份+binlog還原

1mysqldump備份方案:

每周一凌晨1點全庫備份

2、備份步驟

mysql備份恢復

模擬一個完整全庫備份

mysql備份恢復

備份mysqldump全庫備份之前的binlog日志文件

mysql備份恢復

模擬失誤刪除數據

mysql備份恢復

mysql備份恢復

創建tom3

mysql備份恢復

mysql備份恢復

mysql備份恢復

剛才刪除的數據(id=2)恢復回來了,但備份后產生的數據卻丟失了所以還得利用binlog進一步還原因為刪除是在全庫備份后發生的,而mysqldump全庫備份時使用--flush-logs選項,所以只需要分析全庫備份后的binlogmysql-bin.000002

mysql備份恢復

查看 log_bin 事件 可以看到刪除日志

數據恢復刪除之前

mysql備份恢復

數據恢復刪除之后

mysql備份恢復

查看最終恢復結果

mysql備份恢復


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建德市| 晋江市| 体育| 宁德市| 林州市| 界首市| 肇源县| 南郑县| 襄城县| 准格尔旗| 巴中市| 临泉县| 德江县| 利辛县| 西充县| 阜新| 东山县| 井研县| 尚义县| 黄浦区| 庆云县| 安仁县| 中方县| 汤阴县| 武平县| 左权县| 大连市| 西畴县| 汕头市| 白城市| 会东县| 濮阳县| 黔南| 通山县| 平安县| 绥阳县| 奉化市| 基隆市| 临安市| 托克逊县| 奉新县|