在生產(chǎn)環(huán)境中,數(shù)據(jù)的安全性是至關(guān)重要的,任何數(shù)據(jù)的丟失都可能產(chǎn)生嚴(yán)重的后果
造成數(shù)據(jù)丟失的原因:
程序錯(cuò)誤
人為錯(cuò)誤
計(jì)算機(jī)失敗
磁盤失敗
災(zāi)難和偷竊
對(duì)數(shù)據(jù)庫(kù)操作系統(tǒng)的物理文件(如數(shù)據(jù)文件,日志文件等)的備份
冷備份:是在關(guān)閉數(shù)據(jù)庫(kù)的時(shí)候進(jìn)行的
熱備份:數(shù)據(jù)庫(kù)處于運(yùn)行狀態(tài),這種備份方法依賴于數(shù)據(jù)庫(kù)的日志文件
對(duì)數(shù)據(jù)庫(kù)邏輯組件(如表等數(shù)據(jù)庫(kù)對(duì)象)的備份
完全備份:每次對(duì)數(shù)據(jù)進(jìn)行完整的備份
差異備份:備份那些自從上次完全備份之后被修改過(guò)的文件
增量備份:只有那些在上次完全備份或者增量備份后被修改的文件才會(huì)被備份
完全備份是對(duì)整個(gè)數(shù)據(jù)庫(kù)的備份,數(shù)據(jù)結(jié)構(gòu)和文件結(jié)構(gòu)的備份
完全備份保存的是備份完成時(shí)刻的數(shù)據(jù)庫(kù)
完全備份是增量備份的基礎(chǔ)
備份與恢復(fù)操作簡(jiǎn)單方便
數(shù)據(jù)存在大量的重復(fù)
占用大量的備份空間
備份與恢復(fù)時(shí)間長(zhǎng)
直接打包數(shù)據(jù)庫(kù)文件夾,如/usr/local/mysql/data
使用專用備份工具mysqldump
MySQL自帶的備份工具,相當(dāng)方便對(duì)MySQL進(jìn)行備份
通過(guò)該命令工具可以將指定的庫(kù),表和全部的庫(kù)到處為SQL腳本,在需要恢復(fù)時(shí)可進(jìn)行數(shù)據(jù)恢復(fù)
mysqldump -u 用戶名 -p [密碼] [選項(xiàng)] [數(shù)據(jù)庫(kù)名] > /備份路徑/備份文件名
mysqldump -u root -p auth > /backup/auth.sql
mysqldump -u root -p mysql > /backup/mysql.sql
mysqldump -u 用戶名 -p [密碼] [選項(xiàng)] --database 庫(kù)名1 [庫(kù)名2]... > /備份路徑/備份文件名
mysqldump -u root -p --databases auth mysql > /back/databases-auth-mysql.sql
mysqldump -u 用戶名 -p [密碼] [選項(xiàng)] --all-databases > /備份路徑/備份文件名
mysqldump -u root -p --opt --all-databases > /backup/all-data.sql
mysqldump -u 用戶名 -p [密碼] [選項(xiàng)] 數(shù)據(jù)庫(kù)名 表名 > /備份路徑/備份文件名
mysqldump -u root -p mysql user > /backup/mysql-user.sql
source命令
mysql命令
登錄到MySQL數(shù)據(jù)庫(kù)
執(zhí)行source備份sql腳本的路徑
MySQL [(none)]> source /backup/all-data.sql
mysql -u 用戶名 -p [密碼] < 庫(kù)備份腳本的路徑
mysql -u root -p < /backup/all-data.sql
mysql -u 用戶名 -p [密碼] < 表備份腳本的路徑
mysql -u root -p mysql < /backup/mysql-user.sql
完全備份加上日志,可以對(duì)MySQL進(jìn)行最大化的還原
推薦使用庫(kù)名或者表名加上時(shí)間的命名規(guī)則
備份數(shù)據(jù)中有重復(fù)數(shù)據(jù)
備份時(shí)間與恢復(fù)時(shí)間長(zhǎng)
沒(méi)有重復(fù)數(shù)據(jù),備份量不大,時(shí)間短
恢復(fù)麻煩:需要上次完全備份及完全備份之后所有的增量備份才能恢復(fù),而且要對(duì)所有增量備份進(jìn)行逐個(gè)反推恢復(fù)
?二進(jìn)制日志保存了所有更新或者可能更新數(shù)據(jù)庫(kù)的操作
二進(jìn)制日志在啟動(dòng)MySQL服務(wù)器后開(kāi)始記錄,并在文件達(dá)到max_ binlog_size所設(shè)置的大小或者接收到flush logs命令后重新創(chuàng)建新的日志文件
只需定時(shí)執(zhí)行flush logs方法重新創(chuàng)建新的日志,生成二進(jìn)制文件序列,并及時(shí)把這些舊的日志保存到安全的地方就完成了一個(gè)時(shí)間段的增量備份讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:國(guó)際域名空間、網(wǎng)絡(luò)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、棲霞網(wǎng)站維護(hù)、網(wǎng)站推廣。
就是將某個(gè)起始時(shí)間的二進(jìn)制日志導(dǎo)入數(shù)據(jù)庫(kù)中,從而跳過(guò)某個(gè)發(fā)生錯(cuò)誤的時(shí)間點(diǎn)實(shí)現(xiàn)數(shù)據(jù)的恢復(fù)
使用基于時(shí)間點(diǎn)的恢復(fù),可能會(huì)出現(xiàn)在一個(gè)時(shí)間點(diǎn)里既同時(shí)存在正確的操作又存在錯(cuò)誤的操作,所以我們需要一種更為精確的恢復(fù)方式
mysqlbinlog [--no-defaults]增量備份文件 | mysql -u用戶名 -p
mysqlbinlog --stop-position=操作'id' 1進(jìn)制日志 | mysql -u用戶名 -p 密碼
mysqlbinlog --start-position=操作'id'二進(jìn)制日志 | mysql -u用戶名 -p 密碼
mysqlbinlog [--no-defaults] --stop-datetime='年-月-日 小時(shí):分鐘:秒'二進(jìn)制日志 | mysql -u用戶名 -p 密碼
mysqlbinlog [--no defaults] --start-datetime='年-月-日 小時(shí):分鐘:秒'二進(jìn)制日志 | mysql -u用戶名 -p 密碼
mysqlbinlog [--no defaults] --start-datetime='年-月-日 小時(shí):分鐘:秒' --stop-datetime='年-月-日 小時(shí):分鐘:秒'二進(jìn)制日志 | mysql -u用戶名 -p 密碼
mysqlbinlog --no-defaults --base64-output=decode-rows -V mysql-bin.000002 > /opt/ bak. txt
分享題目:MySQL——全量,增量備份與恢復(fù)(理論篇)
瀏覽路徑:http://www.yijiale78.com/article44/pjdeee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站內(nèi)鏈、關(guān)鍵詞優(yōu)化、自適應(yīng)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)