亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MySQL物理備份與恢復工具XtraBackup使用小結

 更新時間:2024年07月21日 09:57:27   作者:雨下的竹子  
本文主要介紹了MySQL物理備份與恢復工具XtraBackup使用小結,借助Percona XtraBackup工具實現(xiàn)MySQL的物理備份與恢復,相當于將整個MySQL進行了復制,再粘貼到其他地方運行,感興趣的可以了解一下

1.描述

借助Percona XtraBackup工具實現(xiàn)MySQL的物理備份與恢復,相當于將整個MySQL進行了復制,再粘貼到其他地方運行。

2.安裝

XtraBackup與MySQL版本對應關系:

XtraBackupMySQL
percona-xtrabackup-245.7
percona-xtrabackup-808
percona-xtrabackup-818.1
percona-xtrabackup-828.2
percona-xtrabackup-838.3
yum -y install percona-xtrabackup-24
yum -y install rsync
yum -y install perl-Digest-MD5
yum -y install qpress

3.使用

3.1 備份源數據庫

#讀取指定配置文件中的信息,壓縮mysql的數據,輸出到/mysql目錄下,再重定向到test.xbstream文件中(相當于tar包)。
innobackupex --defaults-file=/etc/my.cnf  --user=root --password='123456' --port=3306 --socket=/tmp/mysql.sock --stream=xbstream --compress --parallel=8 --compress-threads=8 /mysql > /databak/test.xbstream

–defaults-file指定mysql配置文件,需要包含datadir等信息

–stream采用流的方式備份,這樣可以選擇輸出到本地或遠程

3.2 恢復到目標數據庫

如果恢復位置不在同一臺服務器,可以通過scp進行文件傳輸。

3.2.1 恢復目錄

#相當于解壓tar包,輸出到指定目錄下
xbstream -x < /databak/test.xbstream -C /databak/test

3.2.2 解壓文件

#對前一步輸出目錄下的所有壓縮文件進行解壓
innobackupex --decompress --parallel=8 --compress-threads=8 /databak/test

3.2.3 應用日志

#通過redo同步已提交的事務,使數據文件保持一致
innobackupex --apply-log /databak/test

3.2.4 復制數據

復制數據前,先停止目標MySQL,刪除他的data目錄和日志目錄

#將數據文件拷貝到目標MySQL的數據目錄下
innobackupex --defaults-file=/etc/my.cnf  --parallel=8 --copy-back /databak/test

3.2.5 啟動

#修改mysql相關的文件持有者為mysql用戶
chown -R mysql.mysql /data/mysql
#啟動mysql
systemctl start mysqld

如果是目標MySQL是從服務器,需要恢復主從關系

#查看備份的數據最后的binlog的偏移量,或者gtid
cat /databak/test/xtrabackup_binlog_info
#格式如下:
#mysql-bin.000001        3229488  87bd47b9-12f6-11ed-ae2c-0050569534a2:1-6,8cdb65cf-12f6-11ed-aab7-005056950a99:1-139

連接到MySQL客戶端:

stop slave;
#清理中繼日志
reset slave;
#清理binlog
reset master;
#設置已經執(zhí)行但本地binlog中未記錄的gtid集合
set @@global.gtid_purged='87bd47b9-12f6-11ed-ae2c-0050569534a2:1-6,8cdb65cf-12f6-11ed-aab7-005056950a99:1-139';
#重新建立主從關系
change master to master_host='192.168.86.111',master_port=3306,master_user='backuser',master_password='123456', master_auto_position=1 ;
start slave;
show slave status\G

4.使用總結

環(huán)境:96核 754G內存 30T磁盤(生產環(huán)境的物理機)

4.1 備份

壓縮效率:XtraBackup默認采用的zstd壓縮算法,理論壓縮比為5:1。實際使用中,一個MySQL實例由3.2t壓縮為502G;另一個MySQL實例由5.7t壓縮為825G,壓縮比達到6:1以上

備份速度:一個MySQL實例備份生成502G的壓縮文件,耗時大約50分鐘,判斷每10分鐘生成100G的壓縮文件。如果5個t的數據,壓縮后可能為800G,則耗時約80分鐘。

傳輸文件:通過scp傳輸文件,速度約為350-450MB/s,500G需要20-25分鐘

4.2 恢復

恢復包含多個步驟:

恢復目錄:將壓縮文件解包到指定目錄下,速度較快,約10-20分鐘

解壓:一個MySQL實例為512G,解壓后3.6T,解壓耗時約37分鐘,約10分鐘1T

應用日志:一個MySQL實例耗時約15分鐘

復制:一個MySQL實例,3.6T數據復制耗時約40分鐘,約10分鐘1T

4.3 例子

綜上,假設現(xiàn)有5T的數據需要處理,從備份到恢復的整個流程耗時如下:

  • 備份,5T按6:1壓縮至800G,耗時80分鐘
  • 傳輸,scp按450M/s,耗時30分鐘
  • 恢復,20分鐘
  • 解壓,10分鐘1T,耗時50分鐘
  • 應用日志,20分鐘
  • 復制,10分鐘1T,耗時50分鐘

在以上理想情況下,5T數據至少需要4個小時以上,實際可能5-6小時

到此這篇關于MySQL物理備份與恢復工具XtraBackend使用小結的文章就介紹到這了,更多相關MySQL XtraBackend使用內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MySQL5.0存儲過程教程

    MySQL5.0存儲過程教程

    Introduction 簡介 MySQL 5.0 新特性教程是為需要了解5.0版本新特性的MySQL老用戶而寫的。簡單的來說是介紹了“存儲過程、觸發(fā)器、視圖、信息架構視圖”,在此感謝譯者陳朋奕的努力.
    2008-04-04
  • 從0到1學會MySQL單表查詢

    從0到1學會MySQL單表查詢

    這篇文章主要給大家介紹了關于如何從0到1學會MySQL單表查詢的相關資料,單表查詢是指從一張表數據中查詢所需的數據,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • MySQL利用AES_ENCRYPT()與AES_DECRYPT()加解密的正確方法示例

    MySQL利用AES_ENCRYPT()與AES_DECRYPT()加解密的正確方法示例

    MySQL中AES_ENCRYPT('密碼','鑰匙')函數可以對字段值做加密處理,AES_DECRYPT(表的字段名字,'鑰匙')函數解密處理,下面這篇文章主要給大家介紹了關于MySQL利用AES_ENCRYPT()與AES_DECRYPT()加解密的正確方法,文中給出了詳細的示例代碼,需要的朋友可以參考下。
    2017-08-08
  • RC級別下MySQL死鎖問題的解決

    RC級別下MySQL死鎖問題的解決

    本文主要介紹了RC級別下MySQL死鎖問題的解決,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 檢查mysql是否成功啟動的方法(bat+bash)

    檢查mysql是否成功啟動的方法(bat+bash)

    這篇文章主要介紹了檢查mysql是否成功啟動的方法(bat+bash),如果mysql沒有啟動則開啟服務,需要的朋友可以參考下
    2016-06-06
  • mysql視圖之創(chuàng)建可更新視圖的方法詳解

    mysql視圖之創(chuàng)建可更新視圖的方法詳解

    這篇文章主要介紹了mysql視圖之創(chuàng)建可更新視圖的方法,結合實例形式分析了mysql可更新視圖的具體創(chuàng)建、使用方法及相關操作注意事項,需要的朋友可以參考下
    2019-12-12
  • mysql中如何判斷當前是字符 mysql判斷字段中有無漢字

    mysql中如何判斷當前是字符 mysql判斷字段中有無漢字

    這篇文章主要介紹了mysql如何判斷字段中有無漢字的方法,使用length與char_length兩個函數就可以完成
    2014-01-01
  • CentOS下安裝mysql時忘記設置root密碼致無法登錄的解決方法

    CentOS下安裝mysql時忘記設置root密碼致無法登錄的解決方法

    最近在給公司的內網開發(fā)用服務器裝系統(tǒng),然后裝mysql居然就花了一天,原因是因為本人在CentOS下安裝萬mysql后,無法通過root進入,因為安裝的時候,并沒有設置root密碼而導致無法登錄,通過查找了資料終于解決了,現(xiàn)在想方法分享給大家,有需要的朋友們可以參考借鑒。
    2016-11-11
  • mysql?binlog?回滾示例解析

    mysql?binlog?回滾示例解析

    嚴格來說mysqlbinlog 不能算回滾,他只是將過去的數據修改記錄 重新執(zhí)行一遍,但是從結果上來看,他也算把數據恢復到任意時間點了,這篇文章主要介紹了mysql?binlog回滾示例解析,需要的朋友可以參考下
    2023-08-08
  • Mysql中強制索引的具體使用

    Mysql中強制索引的具體使用

    Mysql強制索引可以通過強制使用某些列的索引來提高查詢的性能,本文就來介紹一下Mysql中強制索引的具體使用,具有一定的參考價值,感興趣的可以了解一下
    2023-08-08

最新評論