您好,登錄后才能下訂單哦!
下文內容主要給大家帶來mysql數據庫完整備份和增量備份腳本講義,這里所講到的知識,與書籍略有不同,都是億速云專業技術人員在與用戶接觸過程中,總結出來的,具有一定的經驗分享價值,希望給廣大讀者帶來幫助。
mysql數據庫自動化完整備份和增量備份
增量備份,為了增強mysql數據庫的安全性和完整性,需要對數據進行備份。這里我們采用的策略是每周五下午5:30進行一次完整備份;每天的6:00、12:10、17:00進行增量備份。
2.增量備份腳本如下:(將生成的二進制文件內容讀取出來并導入一個新的sql文件中)
增量備份的前提時,要在mysql的配置文件里打開二進制功能:
log-bin=mysql
3.將這兩個加進計劃任務里
4.執行結果:
數據庫備份全部文件存放路徑:/backup/mysqldb_full
數據庫增量備份存放路徑:/backup/mysqldb_add
完整備份的文件: (路徑在/backup/mysqldb-full/20150525,以每天的日期作為文件名,*full.sql為完整備份文件,*add.sql為增量備份文件)
打包的備份文件:(路徑在 /backup/mysql_backup)
生成的二進制文件:
5.數據恢復:
(1)恢復完整備份方式;
mysql -p < full.sql
(2) 恢復增量備份
mysqladmin bin-log.000001 | mysql -uroot -p
基于時間點的恢復:
如果誤刪了一張表,使用完全恢復是沒有用的,因為日志里同樣也保留著刪除的sql語句,所以我們需要恢復到誤操作前的狀態,然后跳過誤操作的語句。
假如我在20:00誤刪了一張表,可以使用以下語句恢復:
mysqlbinlog --stop-date='2012-06-05 19:59:59' /var/log/mysql-bin.000001 | mysql -uroot -p
跳過誤刪除的時間點,再執行:
mysqlbinlog --start-date='2012-06-05 20:01:00' /var/log/mysql-bin.000001 | mysql -uroot -p
基于位置點的恢復:
基于位置點的恢復可以得到更為精確的數據。
如上圖,drop table test這條語句的起始位置是889107,終止位置是889189,那么我們可以使用于以下語句進行恢復:
mysqlbinlog --stop-position='889107' /var/lib/mysql/mysql-bin.000001|mysql -uroot -p mysqlbinlog --start-position='889189' /var/lib/mysql/mysql-bin.000001|mysql -uroot -p
對于以上關于mysql數據庫完整備份和增量備份腳本講義,如果大家還有更多需要了解的可以持續關注我們億速云的行業推新,如需獲取專業解答,可在官網聯系售前售后的,希望該文章可給大家帶來一定的知識更新。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。