mysql 备份 第三方工具_Mysql第三方备份工具Xtrabackup使用说明
1、Xtrabackup安裝
1)yum安裝方式:
yuminstallhttp://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
yumlist | grep percona
yuminstall xtrabackup
2)apt安裝方式:
apt-keyadv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A
debhttp://repo.percona.com/apt VERSION main
deb-srchttp://repo.percona.com/apt VERSION main
apt-getupdate
apt-getinstall percona-xtrabackup
2、全備:
innobackupex--defaults-file=/etc/my.cnf --host=127.0.0.1 -port=3306 --user=root--password=123456 --slave-info --safe-slave-backup --no-timestamp? /data/mysqlbak/2015.sql1717
參數(shù)說(shuō)明:
--slave-info會(huì)將Master的binary log的文件名和偏移位置記錄打印出來(lái),同時(shí)也保存到xtrabackup_slave_info文件中.
--safe-slave-backup會(huì)暫停Slave的SQL線程,等待到?jīng)]有打開(kāi)的臨時(shí)表的時(shí)候開(kāi)始備份.備份結(jié)束后SQL線程會(huì)自動(dòng)啟動(dòng),這樣就可以確保一致性的復(fù)制狀態(tài).
--no-timestamp 是讓innobackupex別自動(dòng)生成一個(gè)時(shí)間戳的目錄名/home/mysqlbak/2013***,而是存放在/home/mysqlbak/base
3、全備恢復(fù):
rm-rf /usr/local/mysql/data/*??? ;#測(cè)試環(huán)境刪除數(shù)據(jù)目錄
innobackupex? --apply-log /data/mysqlbak/2015.sql1717? ;#準(zhǔn)備
innobackupex? --copy-back?/data/mysqlbak/2015.sql1717? ;#恢復(fù)
chown-R mysql.mysql /usr/local/mysql/data? ;#修改目錄權(quán)限
/etc/init.d/mysqlstart?????? #啟動(dòng)mysql
4、部分備份:
innobackupex部分備份,有以下三個(gè)參數(shù)可選擇:
1.--databases="database1[.table1] ..."比如: --databases="employees sales.orders"
2.--tables-file=tables.txt, tables.txt文件每一行有一個(gè)database.table
3.--include=regexp,支持正則,比如: --include='^database(1|2)\.reports'
在準(zhǔn)備”部分備份”和拷貝恢復(fù)”部分備份”到一個(gè)空的datadir之后,請(qǐng)確保datadir中有”mysql”數(shù)據(jù)庫(kù),否則MySQL無(wú)法啟動(dòng).
如果沒(méi)有,則需要先創(chuàng)建系統(tǒng)的數(shù)據(jù)庫(kù)再啟動(dòng)。
5、增量備份:
進(jìn)行第一次增量備份,需要在有一次完整備份的基礎(chǔ)上進(jìn)行:
innobackupex? --defaults-file=/etc/my.cnf --host=127.0.0.1-port=3306 --user=root --password=123456?--no-timestamp? --incremental/data/mysqlbak/2015.sql1717-zengliang --incremental-basedir=/data/mysqlbak/2015.sql1717
333795
參數(shù)說(shuō)明:
–incremental????????指定增量備份存放的目標(biāo)目錄
–incremental-basedir=?指定完整備份的目錄
#也可以每次都基于全備做增量備份,而不是基于上一次的增備。
6、增量恢復(fù):
增量備份的還原操作跟完整的還原有點(diǎn)不一樣,首先必須使用–apply-log –redo-only對(duì)完整備份的目錄及所有增量備份目錄進(jìn)行操作,然后就可以像還原完整備份時(shí)的操作了。
1)準(zhǔn)備全備的日志
innobackupex? --apply-log --redo-only ?--use-memory=4G? /data/mysqlbak/2015.sql1717
2)把增量備份合并到全量備份中
innobackupex--defaults-file=/etc/mysql/my.cnf --host=127.0.0.1? -port=3306 --user=root --password=123456? --slave-info --safe-slave-backup --apply-log--use-memory=4G /data/mysqlbak/2015.sql1717?--incremental-dir=/data/mysqlbak/2015.sql1717-zengliang
3)把這個(gè)全備目錄拷貝到數(shù)據(jù)mysql數(shù)據(jù)目錄
innobackupex? --copy-back?/data/mysqlbak/2015.sql1717
7、附xtrabackup參數(shù)說(shuō)明:
--print-defaults顯示默認(rèn)選項(xiàng)。Xtrabackup默認(rèn)情況會(huì)去讀my.cnf文件,讀取順序是/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
--no-defaults忽略任何my.cnf文件選項(xiàng)
--defaults-file=#讀取指定的my.cnf文件
--defaults-extra-file=#再讀取另外一個(gè)文件
--target-dir=name目的目錄,默認(rèn)目錄在./xtrabackup_backupfiles/,相對(duì)于datadir目錄
--backup備份
--stats計(jì)算datadir目錄統(tǒng)計(jì)信息
--prepare從backup??? 恢復(fù)
--export在恢復(fù)時(shí),創(chuàng)建文件導(dǎo)入到另一個(gè)數(shù)據(jù)庫(kù)
--apply-log-only在恢復(fù)時(shí),停止恢復(fù)進(jìn)程不進(jìn)行LSN只使用log
--print-param打印出參數(shù)
--use-memory=#buffer_pool_size值
--suspend-at-end在備份時(shí),創(chuàng)建xtrabackup_suspended文件,直到備份完成后刪掉
--throttle=#限制IO總數(shù)
--log-stream記錄標(biāo)準(zhǔn)輸出信息xtrabackup_logfile
--extra-lsndir=name僅適用于backup,保存另一份xtrabackup_checkpoints文件
--incremental-lsn=name僅適用于backup,增量備份
--incremental-basedir=name僅適用于backup,增量備份目錄
--incremental-dir=name僅適用于prepare,恢復(fù)指定目錄下的.delta文件和日志文件
--tables=name過(guò)濾某些表
--tables_file=name過(guò)濾database.table列表文件
--create-ib-logfile
-h,--datadir=name datadir目錄
-t,--tmpdir=name tmpdir目錄
--parallel=#默認(rèn)為1.傳輸數(shù)據(jù)文件的并行線程數(shù)。沒(méi)有任何流模式的影響
--innodb_*有關(guān)innodb參數(shù)
總結(jié)
以上是生活随笔為你收集整理的mysql 备份 第三方工具_Mysql第三方备份工具Xtrabackup使用说明的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: lisp 标记形心_标记-压缩算法
- 下一篇: mysql定期执行备份语句_【mysql