您好,登錄后才能下訂單哦!
xtrabackup:
xtrabackup是由percona公司開發的。對innoDB引擎支持非常好。在備份的時候不用鎖表。如果是MYiSAM引擎的,則需要鎖表。
xtrabackup 是復制 ib_logfile0(ib_logfile1)事務日志來實行復制的。此外,還提供了perpare 功能。在恢復的時候還可以和數據庫數據比對。如果有更新的則更新到備份中。避免了數據的丟失。同時還提供了壓縮機制減少存儲壓力。
官網下載rpm包地址:https://www.percona.com/downloads/XtraBackup 也 可以yum安裝
yum方式安裝:(以下是官網提供的制作yum源的方法)
構建yum倉庫
#yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
(此時:/etc/yum.repos.d/目錄下多個倉庫 percona-release.repo)
# yum list | grep percona (查看軟件包)
安裝 #yum install percona-xtrabackup-20.x86_64 -y (這里選擇 20版本的)
備份:
innobackupex是perl腳本對xtrabackup的封裝,和功能擴展。xtrabackup需要連接到數據庫和datadir操作權限。
命令:# innobackupex --user=root --defaults-file=.../my.cnf /mnt
#user 是數據庫的用戶(非系統的root) 有密碼 的還可以加參數 --password=
# --defaults-file 如果不設置會自動設置為 /etc/my.cnf(如果多實例需要注意)
--database= 單獨對某個數據庫做備份 ,若是不添加此參數那就那就是對全庫做備份
#/mnt是將備份存放的目錄
恢復:(可以把 數據文件夾下的文件清空 ,但是保留數據文件夾)
# innobackupex --copy-back /mnt/2017-02-13_17-05-08/
這里如果my.cnf文件位置不在/etc下。需要 加參數 --default-file=.../my.cnf
如果在備份的同時數據庫依舊在寫入操作。則需要 prepare 操作。(回滾日志)
先是:prepare 操作,分析事物日志。然后在恢復。
--user-memory:指定prepare階段可使用的內存,內存多則速度快,默認為10MB
# innobackupex --apply-log /mnt/2017-02-13_17-05-08/
# innobackupex --copy-back /mnt/2017-02-13_17_05_08/
修改data目錄的屬組和屬主:# chown -R mysql:mysql ../data
不然啟動的時候會提示找不到 。pid 文件。
啟動服務即可。
壓縮備份:(流操作)
#innobackupex --user=root --stream=tar --defaults-file=/etc/my.cnf /mnt|gzip ->/mnt/mysql.tar.gz
這里的defaults-file 可以省略。如果配置文件在別處需要。指定。
可用參數:
--parallel=4: 加速備份,這個選項會指定xtrabackup備份文件的線程數。
特別注意的是:這里解壓文件 需要參數 i
tar zixf ......tar.gz 不然解壓會出錯。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。