成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

基于Mysql數(shù)據(jù)庫零數(shù)據(jù)丟失恢復探索(下)

IT那活兒 / 895人閱讀
基于Mysql數(shù)據(jù)庫零數(shù)據(jù)丟失恢復探索(下)

點擊上方“IT那活兒”,關(guān)注后了解更多精彩內(nèi)容?。?!

上篇文章跟大家介紹了MYSQLDUMP每天全備+binlog備份的方案,今天再跟大家分享一款強悍企業(yè)級的MYSQL數(shù)據(jù)庫備份工具,是什么呢?我們一起往下看!

PXB簡介

XtraBackup是percona 公司貢獻給開源社區(qū)的一款操作簡單功能強悍企業(yè)級的MYSQL數(shù)據(jù)庫備份工具。它的實現(xiàn)是基于innodb對事務(wù)的支持,利用其崩潰恢復的功能來實現(xiàn)的。MySQL所有的更新操作都是在內(nèi)存中完成的,然后異步的刷入磁盤進行持久化。支持事務(wù)的存儲引擎,為了保證MySQL宕機后內(nèi)存中還未刷出的更新不會丟失,設(shè)計了事務(wù)引擎日志(redo log)。通過將該部分的更新記錄到日志中,然后記錄日志序號(LSN),異步線程在將臟頁刷新到磁盤的同時,維護一個檢查點LSN,兩個LSN之間的差異就是數(shù)據(jù)宕機后丟失的更新。在數(shù)據(jù)庫啟動時,只要事務(wù)日志保存完好,就可以根據(jù)redo log和undo log將數(shù)據(jù)庫恢復到崩潰前的一致性狀態(tài)。
1. 功能和特性
  • 具有在線non-locking熱備功能;
  • 提供全備、增備功能;
  • 提供壓縮、加密功能;
  • 提供流備份功能;
  • 提供庫、單表維度備份功能;
  • 提供基于時間點恢復功能;

2. 版本兼容說明

  • Xtrabackup 2.4 支持mysql 5.6 5.7
  • Xtranbackup 8.0 支持mysql 8.0.*

PXB介質(zhì)下載


PXB安裝的三種方式

1. 二進制安裝

  • 下載安二進制包
Wgethttps://www.percona.com/downloads/XtraBackup/Percona-
XtraBackup-2.4.7/binary/tarball/percona-xtrabackup-2.4.7-
Linux-x86_64.tar.gz


  • 解壓并創(chuàng)建軟連接:


# tar zxvf percona-xtrabackup-2.4.7-Linux-x86_64.tar.gz
# mv percona-xtrabackup-2.4.7-Linux-x86_64
/usr/local/xtrabackup
# ln -s /usr/local/xtrabackup/bin/* /usr/bin/


  • 查看版本:


# xtrabackup --version
xtrabackup version 2.4.7 based on MySQL server 5.7.13 Linux 
(x86_64) (revision id: 6f7a799)

2. 源碼安裝:

  • 安裝依賴包


yum install cmake gcc gcc-c++ libaio libaio-devel automake autoconf bison libtool ncurses-devel    libgcrypt-devel libev-devel libcurl-devel vim-common
libev-devel 包yum安裝不上時,可手動RPM包安裝
rpm -ivh glibc-2.12-1.166.el6.x86_64.rpm
rpm -ivh libev-4.03-3.el6.x86_64.rpm libev-devel-4.03-3.el6.x86_64.rpm


  • 解壓源碼包:


tar -zxvf percona-xtrabackup-2.3.3.tar.gz
cd percona-xtrabackup-2.3.3


  • 編譯安裝:

cmake -DBUILD_CONFIG=xtrabackup_release -DWITH_MAN_PAGES=OFF 
&& make -j4
make install


  • 添加到基本命令:


cp /usr/local/xtrabackup/bin/innobackupex /usr/bin
cp /usr/local/xtrabackup/bin/xtrabackup /usr/bin

3. yum源安裝

  • 安裝Percona的庫:


yum install http://www.percona.com/downloads/percona-
release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm


  • 測試Percona庫:


yum list|grep percona


  • 安裝包:


yum install percona-xtrabackup


實驗環(huán)境

1. Os環(huán)境:CentOS Linux release 7.2.1511 (Core)
2. 數(shù)據(jù)庫版本: 5.7.20
3. Xtrabackup版本:5.7.13
4. 賬號:bkpuser

備份與恢復

1. 全量備份與恢復示例

  • 數(shù)據(jù)庫全量備份


xtrabackup --defaults-file=/etc/my.cnf --host=localhost --
user=bkpuser --password=Ora#01555 -
s/var/lib/mysql/mysql.sock --backup --target-dir=/app/pxb
  • 新建庫,并更新數(shù)據(jù)


mysql -uroot -pOra#01555 -e create database db1;
mysql -uroot -pOra#01555 -e create table db1.t1(id int,name varchar(20));
mysql -uroot -pOra#01555 -e insert into db1.t1 values(1,"a"),(2,"b"),(3,"c");
mysql -uroot -pOra#01555 -e select * from db1.t1;


  • binlog備份正常


sh binlog.sh


  • 模擬刪除所有數(shù)據(jù)文件,刪庫跑路


cd /var/lib/mysql && rm -rf *
  • 使用xtrabackup全量恢復


 停止掉運行的數(shù)據(jù)庫實例:


service mysqld stop
準備:
xtrabackup --host=localhost --user=bkpuser --
password=Ora#01555  -S/var/lib/mysql/mysql.sock --prepare --
target-dir=/app/pxb
拷回數(shù)據(jù):
xtrabackup --host=localhost --user=bkpuser --
password=Ora#01555  -S/var/lib/mysql/mysql.sock --
datadir=/var/lib/mysql --copy-back --target-dir=/app/pxb
修改目錄屬性啟動數(shù)據(jù)庫:
chown -R mysql.mysql /var/lib/mysql
chmod -R 755 /var/lib/mysql
啟動服務(wù):
service mysqld start


  • 使用mysqlbinlog增量恢復

查看備份的位置:
cat xtrabackup_info
binlog_pos = filename on.000009, position 4226787
使用mysqlbinlog恢復后面的位置:
mysqlbinlog on.000009 on.000010 --start-position=4226787 | mysql -uroot -pOra#01555
mysql -uroot -pOra#01555 -e select * from db1.t1;


  • 核查數(shù)據(jù)是否恢復正常

2. 增量備份與恢復示例

  • 增量備份全備
xtrabackup --user=root --password=Ora#01555 --backup --
target-dir=/app/pxb/full
  • 模擬數(shù)據(jù)增加1

  • 增量備份1
xtrabackup --user=root --password=Ora#01555 --backup --
target-dir=/app/pxb/incr1 --incremental-
basedir=/app/pxb/full
  • 模擬數(shù)據(jù)2

  • 增量備份2


xtrabackup --user=root --password=Ora#01555 --backup --
target-dir=/app/pxb/incr2 --incremental-
basedir=/app/pxb/incr1
  • 模擬數(shù)據(jù)3

  • 刪庫跑路

  • 進行數(shù)據(jù)恢復操作

 準備全備份的日志:
xtrabackup --user=root --password=Ora#01555 --prepare --
apply-log-only --target-dir=/app/pxb/full
準備增量備份的日志:
xtrabackup --user=root --password=Ora#01555 --prepare --
apply-log-only --target-dir=/app/pxb/full --incremental-
dir=/app/pxb/incr1
xtrabackup --user=root --password=Ora#01555 --prepare --
apply-log-only --target-dir=/app/pxb/full --incremental-
dir=/app/pxb/incr2
全備份準備:
# xtrabackup --user=root --password=Ora#01555 --prepare 
--target-dir=/app/pxb/full
拷回數(shù)據(jù):
xtrabackup --user=root --password=Ora#01555 --
datadir=/var/lib/mysql --copy-back --target-
dir=/app/pxb/full
mysqlbinlog進行數(shù)據(jù)恢復:
mysqlbinlog on.000006 on.000007 --start-position=154 | mysql 
-uroot -pOra#01555

數(shù)據(jù)是否恢復檢查:

總結(jié)

在MYSQL企業(yè)運維中,務(wù)必保證多從庫,并且在數(shù)據(jù)冗余的同時,要切記不能缺少備份,備份重于一切,這是數(shù)據(jù)丟失后,數(shù)據(jù)恢復的最后一根稻草,在MYSQL里,物理備份+BINLOG實時備份,可保證我們數(shù)據(jù)盡可能零丟失,特別是在一些人為或極端不可抗的情況下,備份顯得尤其重要.


本文來源:IT那活兒微信公眾號(上海新炬王翦團隊)

更多精彩干貨分享

點擊下方名片關(guān)注

IT那活兒

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/129723.html

相關(guān)文章

  • TiDB at 豐巢:嘗鮮分布式數(shù)據(jù)

    摘要:為此,一款高性能的分布式數(shù)據(jù)庫,日漸成為剛需?;谌缟系脑颍覀冞x擇了,作為豐巢的核心系統(tǒng)的分布式數(shù)據(jù)庫,來取代和。 作者:豐巢技術(shù)團隊 隨著豐巢業(yè)務(wù)系統(tǒng)快速增長,其核心系統(tǒng)的數(shù)據(jù)量,早就跨越了億級別,而且每年增量仍然在飛速發(fā)展。整個核心系統(tǒng)隨著數(shù)據(jù)量的壓力增長,不但系統(tǒng)架構(gòu)復雜度急劇增長,數(shù)據(jù)架構(gòu)更加復雜,傳統(tǒng)的單節(jié)點數(shù)據(jù)庫,已經(jīng)日漸不能滿足豐巢的需求,當單表數(shù)量上億的時候,Ora...

    sixgo 評論0 收藏0
  • 單排學Redis【白銀】

    摘要:對于數(shù)據(jù)結(jié)構(gòu)哈希表我們在上一篇也已經(jīng)詳細說了。鍵空間示意圖的數(shù)據(jù)庫就是使用字典哈希表來作為底層實現(xiàn)的,對數(shù)據(jù)庫的增刪改查都是構(gòu)建在字典哈希表的操作之上的。 前言 只有光頭才能變強 今天繼續(xù)來學習Redis,上一篇從零單排學Redis【青銅】已經(jīng)將Redis常用的數(shù)據(jù)結(jié)構(gòu)過了一遍了。如果還沒看的同學可以先去看一遍再回來~ 這篇主要講的內(nèi)容有: Redis服務(wù)器的數(shù)據(jù)庫 Redis對過期...

    denson 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<