備份是dba的救命稻草,沒有備份就等於沒有滿血復活的機會~ 所以作為一名光榮的mysql dba 一定要做好備份,並校隊備份的可用性哦。
常見的邏輯備份 mysqldump 和mysqlpump
常見的物理備份 xtrabackup
關閉mysql 拷貝檔案 啟動mysql
#本文重點和程式都使用xtrabackup備份,其他備份姿勢請報名「知數堂」 ,吳老司機帶你飛。
首先會啟動乙個 xtrabackup_log後台檢測的程序 實時檢測mysql redo的變化 一旦發現redo有新的日誌寫入 立刻將日誌寫入到xtrabackup_log中
複製innodb的資料檔案和系統表空間檔案 idbata1到對應的默以預設時間戳為備份目錄的地方
複製結束後 執行 flush
table
with
read
lock操作
複製 .frm .myd .myi檔案
並且在第一時刻獲得binary
log 位置
將表進行解鎖 unlock
tables
停止xtrabackup_log程序
#附上一張原理圖 來自阿里資料庫核心月報
基本操作
1.全量備份
innobackupex --defaults-file=/etc/my.cnf --user=root --password=redhat /data/backup
--defaults-file 配置檔案
--user 表示使用者名稱
--password 表示密碼
/data/backup 備份路徑
2. 應用redo
-17_11-50
-433.恢復
1,需要恢復地方的mysql需要關閉
2.目前datadir 為空
innobackupex --copy-back /data/backup/2017-02
-17_11-36
-47/
4.更改copy過去的許可權
chow -r mysql:mysql /data/backup/2017-02
-17_11-36
-47/
5.啟動mysql
因為雲備份比傳統備份更加可靠,在**上更有優勢,不用考慮硬體的損耗和成本。
畢竟mysql伺服器一般都是內部網路,不會有對外網路,這時候需要安全組和網路組的同學開放乙個策略到阿里的oss上傳放行。如果不可以的話,那麼需要搭建乙個內部的分布式儲存ceph來替代oss。
5.1 需要單獨的物理網路做備份網路,避免在執行備份傳輸的時候造成網路阻塞,從而影響業務
5.2很多個備份同時執行的時候,需要考慮乙個佇列問題。避免同時上傳,導致網路阻塞。後果本地備份成功,上次oss或者ceph失敗。需要設計乙個合理的佇列並限速。先上傳核心的庫。每次同時上傳4個,等待上傳成功後在進行下乙個佇列的傳輸。
5.3 本地備份留2天,oss上或者ceph根據空間大小和庫的大小自行決定設計
叮咚 您的MySQL雲備份已上線
作為一名合格的mysql dba,備份是重中之重。為了保證備份集的安全可靠,除了集中儲存以外還有其他更好的方案嘛?當然是有的,可以儲存在oss上或者分布式儲存上。那麼問題來了如何能夠實現自動備份,並且上次到oss上,不需要人工干預,節約大量的時間去悠哉悠哉的喝喝茶 看看報呢。常見的邏輯備份 mysq...
騰訊雲上安裝mysql的排坑版
2.安裝rpm rpm ivh mysql57 community release el7 11.noarch.rpm 3.安裝mysql yum install mysql community server 4.啟動mysql systemctl start mysqld 啟動後通過systemc...
在騰訊雲上安裝mysql遇到的問題
解除安裝mysql 1 sudo apt get autoremove purge mysql server 5.5 5.5 是資料庫版本,mysql v 顯示版本資訊 2 sudo apt get remove mysql server 3 sudo apt get autoremove mysq...