Xtrabackup介紹和使用【基礎篇】
Xtrabackup有2款主要工具:xtrabackup和innobackupex
xtrabackup只能備份和恢復innodb,而且只備份.ibd檔案,.frm檔案它不管,恢復時DBA要自己提供
innobackupex能備份和恢復MyISAM檔案及.frm檔案,並且對xtrabackup作了友好的封裝,所以可用它進行全庫備份
不過有個問題,在對MyISAM備份時,會加個全庫讀鎖,阻塞寫服務
關於安裝
依賴包
yum install libaio libaio-devel perl-Time-HiRes curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel perl-ExtUtils-MakeMaker perl-DBD-MySQL.* package -y
到下載編譯好的二進位制包即可馬上使用
下面分別對這2個工具做簡單測試
innobackupex的備份原理如下圖:
簡單例項
備份
$ innobackupex --user=root --password=oracle /home/mysql/backup
模擬故障
$ mysqladmin -uroot -poracle shutdown
$ rm -rf /home/mysql/mysql/data/*
恢復
$ innobackupex --user=root --password=oracle --apply-log /home/mysql/backup/2013-10-08_14-32-27
$ innobackupex --user=root --password=oracle --copy-back /home/mysql/backup/2013-10-08_14-32-27
xtrabackup備份原理大概有如下3個過程:
① 記錄LSN(log sequence number)
② 複製檔案
③ 啟動後臺程式,不停地記錄變化的redo
這個流程可以從xtrabackup備份輸出結果看出來
簡單測試
備份
$ xtrabackup --backup --target-dir=/home/mysql/backup
[mysql@even backup]$ ls
employees ibdata1 xtrabackup_checkpoints xtrabackup_logfile
模擬故障
關閉MySQL,把整個datadir目錄清空,不過僅保留mysql和performance_schema這兩個庫
恢復
--恢復ibdata1,讓資料檔案自身保持一致
$ xtrabackup --prepare --target-dir=/home/mysql/backup/
--恢復ib_logfile0 ib_logfile1,減少恢復時間
$ xtrabackup --prepare --target-dir=/home/mysql/backup/
$ rsync -avrP /home/mysql/backup/ /home/mysql/mysql/data/
$ chown -R mysql:dba /home/mysql/mysql/data
參考文章:
By 迦夜
2013-10-9
Early start makes easy stages
相關文章
- MySQL使用XtraBackup的shell指令碼介紹MySql指令碼
- Java基礎知識篇——Java基本介紹Java
- XtraBackup備份原理和優缺點介紹
- 重新整理 mysql 基礎篇————— 介紹mysql[一]MySql
- Html與css基礎知識介紹(必看篇)HTMLCSS
- 【Xtrabackup】Xtrabackup備份基礎知識
- Python介紹和基礎運用Python
- Android RxJava:基礎介紹與使用AndroidRxJava
- PEG.js 介紹與基礎使用JS
- Pandas基礎介紹
- Elasticsearch 基礎介紹Elasticsearch
- kafka 基礎介紹Kafka
- kafka基礎介紹Kafka
- 【Kubernetes系列】第2篇 基礎概念介紹
- ActiveMq的基礎介紹MQ
- MySQL 教程基礎介紹MySql
- JDBC的基礎介紹JDBC
- 基礎 RAID 介紹AI
- java基礎介紹(轉)Java
- 1、Oracle 基礎介紹Oracle
- 重新整理 mysql 基礎篇————— 介紹mysql日誌[二]MySql
- Swift 面向協議程式設計 基礎篇 (一) 介紹Swift協議程式設計
- Windows phone8 基礎篇(二) xaml介紹 一薦Windows
- iptables基礎原理和使用簡介
- 以太坊開發框架Truffle基礎使用介紹框架
- OSPF介紹及基礎配置
- Django基礎教程之介紹Django
- ConstraintLayout基礎介紹AI
- Epub基礎知識介紹
- HT for Web基礎動畫介紹Web動畫
- 分割槽表基礎介紹
- 【塗鴉物聯網足跡】物聯網基礎介紹篇
- Salesforce Consumer Goods Cloud 淺談篇一之基礎介紹SalesforceGoCloud
- ES使用和搜尋中心的建設(一:基礎介紹與語法)
- 『忘了再學』Shell基礎 — 27、AWK程式設計的介紹和基本使用程式設計
- 資料倉儲基礎介紹
- 02-ASP.Net(基礎介紹)ASP.NET
- Spark Streaming基礎概念介紹Spark