13.基於時間點的恢復
介紹
恢復完整備份後,您需要還原二進位制日誌以獲取時間點恢復。 備份提供備份可用的二進位制日誌位置。
操作
1 mysqldump or mysqlpump
binary log資訊根據傳遞給mysqldump/mysqlpump的選項作為CHANGE MASTER TO命令儲存在SQL檔案中。
1.1 如果使用–master-data引數匯出的備份集,則應使用slave的二進位制日誌
在slave資料庫執行備份遠端資料庫
mysqldump -h <master_host> \ -u backup_user \ --password=<pass> \ --all-databases \ --routines --events \ --single-transaction \ --master-data > dump.sql
在slave資料庫恢復資料庫
mysql -u<user> -p -h <host> -f < dump.sql
檢視備份指令碼的資訊
shell> head -30 /backups/dump.sql
根據圖片顯示,現在在master伺服器應該使用mysql-bin.000002位置3012恢復
shell> mysqlbinlog --start-position=3012 --disable-log-bin /app/mysql/mysqldata/3306/binlog/mysql-bin.000002 | mysql -u<user> -p -h <host> -f
- : slave伺服器
報錯
ERROR 1782 (HY000) at line 19: @@SESSION.GTID_NEXT cannot be set to ANONYMOUS when @@GLOBAL.GTID_MODE = ON.
在slave伺服器執行
set @@GLOBAL.GTID_MODE = ON_PERMISSIVE;
set @@GLOBAL.GTID_MODE = OFF_PERMISSIVE;
1.2 如果使用–dump-slave引數匯出備份集,則應該使用master日誌的位置
在slave資料庫執行備份遠端資料庫
mysqldump -h <master_host> \
-u backup_user \
--password=<pass> \
--all-databases \
--routines --events \
--single-transaction \
--dump-slave > dump.sql
在slave資料庫恢復資料庫
mysql -u<user> -p -h <host> -f < dump.sql
推演binlog
shell> mysqlbinlog --start-position=463 --disable-log-bin /backups/binlogs/centos7-bin.000001 | mysql -u<user> -p -h <host> -f
注:
1.3 mydumper
通過mydumper在slave伺服器備份資料庫
mysql> mydumper -h 192.168.200.101 \
-u root \
--password=root \
--use-savepoints \
--trx-consistency-only \
--kill-long-queries \
--outputdir /app/mysql/mysqldata/backup
在slave伺服器恢復資料庫
mysql> myloader \
--directory=/app/mysql/mysqldata/backup \
--user=root \
--password=root \
--queries-per-transaction=5000 \
--threads=8 \
--overwrite-tables
檢視metadata
shell> cat /app/mysql/mysqldata/backup/metadata
如果已從slave屬伺服器獲取二進位制日誌備份,則應從位置392處的mysql-bin.000004檔案開始還原
mysql> SHOW MASTER STATUS
相關推薦
13.基於時間點的恢復
介紹 恢復完整備份後,您需要還原二進位制日誌以獲取時間點恢復。 備份提供備份可用的二進位制日誌位置。 操作 1 mysqldump or mysqlpump binary log資訊根據傳遞給mysqldump/mysqlpump的選項作為CHANGE MASTER TO命令
12C-PDB基於時間點恢復
RMAN>alter pluggable database zaki1 close immediate; RMAN> run{ 2> set until time "TO_DATE('2016-10-31 12:03:08','yyyy-mm-dd hh
binlog-rollback.pl基於binlog位置點和時間點恢復delete誤刪語句
基於位置點和時間點恢復delete誤刪一、基於binlog位置點的恢復 為了演示,刷新一個新的binlog文件,讓它單獨記錄delete刪除語句: MySQL [zhangyou]> flush logs Query OK, 0 rows affected (0.09 sec) MySQL [zhan
Mysql的增量備份 及基於時間點與位置的恢復
pre school 主從架構 http 二進制 全備 etc 復數 根據 增量備份的優點是沒有重復數據,備份量不大,時間短。缺點也很明顯,需要上次完全備份及完全備份之後所有的增量備份才能恢復,反推恢復,操作較為繁瑣。 Mysql沒有提供增量備份的方法,但是可以通過二進制日
MySQL增量備份恢復和基於時間點與位置的恢復
local 間接 恢復 efault posit 創建 val etc 節點 為什麽使用增量備份? 完全備份有兩種方式,一種是使用tar打包數據文件,另一種是使用mysqldump進行完全備份。完全備份存在的問題很容易看到,每次都是把所有的數據內容進行備份,備份數據中有大量
MySQL 基於時間點與位置恢復
開始 mark 文本 zhang map bin 完全 slave -o 基於時間點與位置恢復 利用二進制日誌可以實現基於時間與位置的恢復,例如由於誤操作刪除了一張表,這時候完全恢復是沒用的,因為日誌裏面還是存在錯誤語句,我們需要的是恢復到誤操作之前的狀態,然後跳過誤操作數
使用 mysqldump 實現 MySQL 5.7 基於時間點的恢復
trigger result c89 ade cto ima RoCE out a10 創建測試數據全備數據庫 mysqldump --single-transaction --flush-logs --master-data=2 --all-databases --tri
ARCHIVELOG模式下使用者管理的不完全恢復—基於時間點的不完全恢復
基於時間點的恢復主要使用於以下情況:誤刪除表、誤截斷表、提交了錯誤的資料。(從oracle 10g利用閃回更easy!) 首先關閉資料庫執行一個冷全備份(冷備份的時候使用者u1的t表中是有3條記錄的。) [sql] view plai
基於時間點RMAN恢復
二. 恢復步驟: 1. 引數檔案恢復 [[email protected] ~]$ rman target / Recovery Manager: Release 11.2.0.4.0 - Production on Tue Sep 5 05:50:45 2017 Copyright
RMAN備份與恢復之基於時間點的不完全恢復
一 不完全恢復講解 在上一篇文章(RMAN備份與恢復之UNDO表空間丟失)中,我們講到UNDO表空間丟失怎麼處理。UNDO表空間是不可離線的,同樣,SYSTEM表空間也是不可離線的,所以SYSTEM表空間丟失的處理辦法和UNDO表空間丟失的處理辦法類似,在
MySQL中基於mysqldump和二進制日誌log-bin二進制日誌進行邏輯備份以及基於時間點的還原
總結 mysql-bin lin .sql bin -h eat log-bin 之前 本文出處:http://www.cnblogs.com/wy123/p/6956464.html 本文僅模擬使用mysqldump和log-bin二進制日誌進行簡單
RMAN基於時間點回複數據
1、檢視資料庫是否歸檔 [[email protected] ~]$sqlplus / as sysdba SQL> archive log list 2、實驗過程 2.1建立測試使用者 CREATE TABLESPACE qqqDATAFILE'/u0
數據庫恢復至某個時間點
fast ott acl ring rod 宋體 ice reset iat 實例詳解: 數據庫恢復到某個時間點 [oracle@lyo1 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production o
使用xtrbackup/mysqldump全量備份+binlog備份恢復到最近一個時間點
先用xtrabackup做全備: innobackupex --defaults-file=/usr/local/mysql/my.cnf --user=root --password=123 /home/backup/xtrabackup/ 全備完成之後新建sanguoyanyi表,並插入
mysql 開發進階篇系列 43 邏輯備份與恢復(基於時間和位置的不完全恢復)
一. 概述 在上篇講到了邏輯備份,使用mysqldump工具來備份一個庫,並使用完全恢復還原了資料庫。在結尾也講到了誤操作是不能用完全恢復的。解決辦法是:我們需要恢復到誤操作之前的狀態,然後跳過誤操作語句。再恢復後面執行的語句,完成我們的恢復,這種恢復叫“不完全恢復”。在mysql 中,不完
oracle通過快照恢復資料到某個時間點
1、如果是第一次對錶操作,先執行這sql ALTER TABLE TB_YOFISHDK_ORDER_LOAN_INFO ENABLE ROW MOVEMENT; --注:如果報錯ORA-08189: cannot flashback the table because ro
一步一步告訴你DB2關於指定時間點前滾恢復方法
(1)備份資料庫 [[email protected] ~ 22]$db2 backup db sample online include logs Backup successful. The timestamp for this backup image
恢復到特定點(時間點、scn、日誌序列號),rman不完全恢復
將資料庫、表空間、資料檔案等恢復至恢復備份集儲存時間中的任何一個時間點/SCN/日誌序列(一般是日誌挖掘找到誤操作點),但須謹慎,操作前一定需要做好備份,具備條件的情況下最好先恢復到異機,避免業務停機時間。 前提:已經有資料庫備份 (作者已經提前準備了備份,這裡不進行備
DB2關於指定時間點前滾恢復方法
其中,End Time: 20051223120902為備份的結束時間,同時它也是前滾時的最小恢復時間點(PIT),也就是說,如果按照指定時間點恢復,最小要恢復到這個時間點,如果用提前於這個時間的時間來前滾,將會返回資訊提示:[[email protected] ~ 31]$db2 ”rollfor
[RMAN]使用RMAN備份將資料庫不完全恢復到指定時間點
RMAN作為Oracle強大的備份恢復工具,可以協助我們恢復資料庫到指定時間點,這便是Oracle不完全恢復的一種體現,通過這種方法可以找回我們曾經丟失的資料。這裡以找回誤TRUNCATE表資料為例給大家演示一下RMAN的不完全恢復功能。 1.調整資料庫為歸檔模式[emai