91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

xtrabackup安裝

發布時間:2020-07-08 15:56:26 來源:網絡 閱讀:522 作者:幽魂伊夢 欄目:數據庫

xtabakcup


*****************************************************************  

安裝  

*****************************************************************  

----1.編譯安裝percona-xtrabackup  

yum -y install cmake gcc gcc-c++ libaio libaio-devel automake autoconf bzr \  

bison libtool  zlib-devel libgcrypt-devel  libcurl-devel  crypt*  libgcrypt* \  

python-sphinx openssl   imake libxml2-devel expat-devel   ncurses5-devel ncurses-devle   vim-common  libgpg-error-devel   libidn-devel  

  

NOTE:2.2.16 需要python-sphinx openssl兩個依賴包.    

  

---2.安裝相關插件  

  

yum -y install perl-DBI  

yum -y install perl-DBD-MySQL  

yum -y install  perl-Time-HiRes  

yum -y install perl-IO-Socket-SSL  


---3.編譯安裝組件

http://dist.schmorp.de/libev/  

  

#tar xvzf libev-4.22.tar.gz  


# ./configure  

  

# make   

  

# make install  


#tar xvzf mysql-boost-5.7.15.tar.gz (編譯時候用)


--4.安裝xtrabackup

tar xvzf percona-xtrabackup-2.4.4.tar.gz

cd percona-xtrabackup-2.4.4.tar.gz


cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DSYSCONFDIR=/etc \

-DWITH_BOOST=/home/mysql-5.7.15/boost


make


make install


---測試結果  

# xtrabackup --version

xtrabackup version 2.4.4 based on MySQL server 5.7.13 Linux (x86_64) (revision id: df58cf2)


---4.備份預備工作


權限和連接


xtrabackup需要連接到數據庫和datadir操作權限。


xtrabackup或者innobackupex在使用過程中設計到2類用戶權限:


1.系統用戶,用來調用innobackupex或者xtrabackup


2.數據庫用戶,數據庫內使用的用戶


需要的權限:連接到服務是為了執行備份,需要在datadir上有read,write和execute權限。在數據庫中需要以下權限:


  RELOAD和LOCK TABLES權限為了執行FLUSH TABLES WITH READ LOCK   。


  REPLICATION CLIENT為了獲取binary log 位置


  CREATE TABLESPACE權限為了導入表,用戶表級別的恢復


  SUPER權限在slave環境下備份用來啟動和關閉slave線程

 

mysql>CREATEUSER'bkpuser'@'localhost' IDENTIFIED BY's3cret';

mysql>GRANT RELOAD, LOCK TABLES, REPLICATION CLIENT ON*.*TO'bkpuser'@'localhost';

mysql> FLUSH PRIVILEGES;


---5.全備份和增量備份

全備份

$ innobackupex --user=DBUSER --password=DBUSERPASS /data/backups


從信息中會發現備份被創建在/data/backups/2016-10-25_00-00-09


內部機制:在備份的時候innobackupex會調用xtrabackup來備份innodb表,并復制所有的表定義,其他引擎的表(MyISAM,MERGE,CSV,ARCHIVE)。


增量備份


增量備份呢是為了減少空間使用和備份的時間。


增量備份的實現,依賴于innodb頁上面的LSN(log sequence number),每次對數據庫的修改都會導致LSN自增。


增量備份會復制指定LSN之后的所有數據頁

$ innobackupex --user=DBUSER --password=DBUSERPASS -target-dir=/data/backups/1 --incremental-basedir=/data/backups/2016-10-25_00-00-09/

1目錄下回有增量備份新目錄


然后再創建一個增量備份


在增量備份1的基礎上再創建一個增量備份,記為增量備份2。


$ innobackupex --user=DBUSER --password=DBUSERPASS -target-dir=/data/backups/2 --incremental-basedir=/data/backups/1/2016-10-25_10-10-11/



 增量備份替代方法


#可以使用指定—incremental-lsn來代替—incremental-basedir的方法創建增量備份。


#innobackupex --incremental /data/backups --incremental-lsn=1291135


#innobackupex --incremental /data/backups --incremental-lsn=1358967



---6.恢復數據


預備增量備份


1.需要先預備全備,但是只重做已提交事務,不回滾未提交事務,然后應用到全備,也是只重做已提交事務,不回滾未提交事務


2.回滾未提交事務


如果已經回滾了未提交事務,那么就無法再應用增量備份



在全備上,使用—redo-only只做已提交事務,不回滾未提交事務


innobackupex --apply-log --redo-only /data/backups/2016-10-25_00-00-09


應用第一個增量備份


innobackupex --apply-log --redo-only /data/backups/2016-10-25_00-00-09 --incremental-dir=/data/backups/1/2016-10-25_10-10-11/


應用第二個增量備份


innobackupex --apply-log /data/backups/2016-10-25_00-00-09 --incremental-dir=/data/backups/2/2016-10-25_16-30-32/


輸出結果,注意LSN的變化:


162026 22:08:43 InnoDB: Shutdown completed; log sequence number 1358967

161026 22:08:43 innobackupex: completed OK!



回滾未提交事務


當應用完所有增量備份的時候,就需要回滾所有為完成事務(如果最后一步加了 –redo-only就需要回滾未提交,不執行的話在服務啟動階段服務會處理未提交事務)。

innobackupex --apply-log /data/backups/2016-10-25_00-00-09


還原操作

service mysqld stop

刪除數據庫數據目錄下的所有數據或者備份數據目錄下的所有數據

還原:

innobackupex --copy-back /data/backups/2016-10-25_00-00-09


改變數據庫目錄權限

chown -R mysql:mysql data/mysqldb


啟動數據庫

service mysqld start



恢復順序:

# 全備應用日志 

[root@client103 ~]# innobackupex  --apply-log /tmp/backup/2014-01-11_15-37-31/ 

# 第一次的增量備份應用日志,應用完日志后,將合并到全備上,恢復使用全備恢復 

[root@client103 ~]# innobackupex  --apply-log /tmp/backup/2014-01-11_15-37-31/ --incremental-dir=/tmp/backup/2014-01-11_15-45-06/ 

# 將第二次增量備份應用日志并合并到全備上 

[root@client103 ~]# innobackupex  --apply-log /tmp/backup/2014-01-11_15-37-31/ --incremental-dir=/tmp/backup/2014-01-11_15-46-33/ 

# 此時兩次增量備份其實都合并到全備上了,恢復是只需要使用全備進行恢復就可以了 

# 模擬數據故障[刪除數據庫的數據目錄,執行如下命令還原] 

[root@client103 ~]# innobackupex --copy-back /tmp/backup/2014-01-11_15-37-31/ 

# 恢復后的數據默認權限是有問題的,所以需要修改數據目錄權限,如下 

[root@client103 ~]# chown -R mysql:mysql /var/lib/mysql/ 

# 此時數據恢復完成,重啟數據庫服務,進行測試就可以了。大家自行測試,有問題留言反饋!




向AI問一下細節

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

AI

佛坪县| 巴东县| 赣榆县| 江永县| 安乡县| 建湖县| 治多县| 留坝县| 鄂托克旗| 和田市| 肇东市| 秦安县| 镶黄旗| 蕲春县| 维西| 呼玛县| 武平县| 从江县| 花莲县| 稷山县| 河北区| 塔河县| 平遥县| 兰西县| 苗栗市| 海晏县| 治多县| 盐源县| 广昌县| 高雄市| 广汉市| 浙江省| 齐齐哈尔市| 阳高县| 梁河县| 广德县| 新源县| 莆田市| 蓬溪县| 辽中县| 孟津县|