久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么理解Xtrabackup

171次閱讀
沒有評論

共計 2924 個字符,預計需要花費 8 分鐘才能閱讀完成。

怎么理解 Xtrabackup,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

就 Xtrabackup 談一下自己的經歷
Xtrabackup 包括 innobackupex-1.5.1 和 xtrabackup 兩個部分,我用的是新版本 0.9 源碼包。innobackupex-1.5.1 是一個 perl 腳本,在 xtrabackup 上做了一層外包,添加了對 MyISAM 存儲引擎和其他選項的支持。

innobackupex
備份【這里指完整備份】
innobackupex-1.5.1 –user=root –password=123456 /backup/mysql 2 /backup/mysql/backup_out.log

innobackupex-1.5.1 會在備份目錄下生成一個日期時間 HASH 哈希目錄,如:/backup/mysql/2009-10-28_10-40-11。同時也可以將運行過程寫入日志方便以后查看

下面我們來看一下 innobackupex-1.5.1 都幫助我們備份了哪些重要文件

ls -l /backup/mysql/2009-10-28_10-40-11
backup-my.cnf ————備份 MySQL 配置文件 my.cnf
ibdata1 ————備份 InnoDB 數據空間文件
mysql ————備份 mysql 系統庫
mysql-stderr ————innobackupex-1.5.1 運行錯誤信息
mysql-stdout ————innobackupex-1.5.1 運行跟蹤記錄
mytestdb ————備份用戶自定義數據庫
test ————備份 test 庫
xtrabackup_binlog_info ————記錄備份時 binlog 信息和時間點
xtrabackup_checkpoints ————記錄備份類型和時間點
xtrabackup_logfile ————二進制日志

附:mytestdb 庫包含 MyISAM 和 InnoDB 存儲引擎的表

ls -l /backup/mysql/2009-10-28_10-40-11/mytestdb
record.frm
record.ibd
shop.frm
shop.MYD
shop.MYI

這里我們查看下 mytestdb,MyISAM 和 InnoDB 存儲引擎的表的定義文件、數據文件和索引文件都被備份下來了 ^_^

恢復
———準備日志文件
innobackupex-1.5.1 –apply-log /backup/mysql/2009-10-28_10-40-11

ls /backup/mysql/2009-10-28_10-40-11 我們看到除了以上文件外又多了 InnoDB 日志文件
ib_logfile0 ib_logfile1

———拷貝備份文件——實際的恢復【好像 MyISAM 的文件拷貝】
innobackupex-1.5.1 –copy-back /backup/mysql/2009-10-28_10-40-11

ls -l /data/dbfile/
查看服務器數據文件目錄,我們看到備份的所有文件已經都 copy 過來了

chown -R mysql.mysql /data/dbfile
修改數據目錄權限

重啟 mysqld 使生效

xtrabackup

備份
(full backup)
# ./xtrabackup –backup –target-dir=/backup/mysql

(single db backup)
# ./xtrabackup –backup –tables=mytestdb.* –target-dir=/backup/mysql

(incremental backup)
# ./xtrabackup –backup –target-dir=/backup/mysql –incremental-basedir=/backup/mysql/inc

(prepare)
# ./xtrabackup –prepare –target-dir=/backup/mysql 注:從詞面解釋 prepare 是準備的意思——也就是說它不是直接恢復。同 innobackupex-1.5.1 一樣需要先生成 InnoDB 日志文件 ib_logfile*,所以這里執行 2 次完成恢復前的準備工作
恢復的時候直接拷貝文件到數據目錄即可
假使你誤刪除了數據庫目錄或 InnoDB 相關文件,這樣做可以幫助你恢復到當時的完整數據;假使你只想定時恢復,這樣做會覆蓋當前數據目錄下的文件

區別:
innobackupex-1.5.1 備份了所有數據庫文件【包括表定義文件、數據文件、索引文件】
xtrabackup 只備份 InnoDB 表的數據文件——tablename.ibd 文件,所以我們需要單獨備份表定義文件或 dump 的數據庫結構,否則出現誤刪除數據目錄的情況可就 …uh… 新 dump 的結構和數據不一定對的上哦~

(apply incremental backup)
# ./xtrabackup –prepare –target-dir=/backup/mysql –incremental-dir=/backup/mysql/inc

chown -R mysql.mysql /data/dbfile
修改數據目錄權限

重啟 mysqld 使生效

增量備份待研究,To be continued … [@more@]

innobackupex-1.5.1 備份擴展

打包備份【打包必須指定流 –stream=tar】
tar 包
innobackupex-1.5.1 –user=root –password=123456 –stream=tar /backup/mysql 2 /backup/mysql/backup_out.log 1 /data/backup/mysql/last.tar

gz 包
innobackupex-1.5.1 –user=root –password=123456 –stream=tar /backup/mysql 2 /backup/mysql/backup_out.log | gzip /backup/mysql/last.tar.gz

遠程備份
nnobackupex-1.5.1 –user=root –password=123456 –stream=tar /backup/mysql | ssh user@192.168.x.x gzip /backup/mysql/backup.tar.gz

指定數據庫備份
innobackupex-1.5.1 –user=root –password=123456 –databases=mytestdb –stream=tar /backup/mysql | gzip /backup/mysql/mytestdb.tar.gz

對于包的解壓需要說一下
# mkdir /backup/mysql/tmp
# tar ixzvf last.tar.gz -Ctmp【必須指定 i 參數才可獲得所有文件,否則只是 backup-my.cnf】

看完上述內容,你們掌握怎么理解 Xtrabackup 的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注丸趣 TV 行業資訊頻道,感謝各位的閱讀!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-19發表,共計2924字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 灵川县| 凤台县| 巴南区| 宝兴县| 沙坪坝区| 东丽区| 阜阳市| 南郑县| 南和县| 邹城市| 广昌县| 郓城县| 阿拉善右旗| 上虞市| 肃北| 武功县| 雷波县| 昌乐县| 兴海县| 行唐县| 宣威市| 公主岭市| 祁连县| 绵竹市| 托里县| 夏津县| 留坝县| 承德市| 临泉县| 夹江县| 沧州市| 报价| 余姚市| 黎川县| 齐齐哈尔市| 自贡市| 高要市| 泌阳县| 井冈山市| 木兰县| 正宁县|