国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

MySQL備份腳本的寫法

瀏覽:3日期:2023-10-12 13:22:42

前言:

數據庫備份的重要性不言而喻,特別是在生產環境,任何數據的丟失都可能產生嚴重的后果。所以,無論什么環境,我們都應該有相應的備份策略來定時備份數據庫。在 MySQL 中,比較常用的邏輯備份工具是 mysqldump,本篇文章將介紹 MySQL 定時備份的方法。

1.制定合適的備份策略

對于不同的數據庫環境,我們應該考慮不同的備份策略。制定備份策略時,應考慮以下幾點因素:

物理備份還是邏輯備份。這個可以由數據庫大小決定,比如說小于100G用邏輯備份,大于100G用物理備份。 備份文件保留時間。這個可以由磁盤大小決定,一般至少保留7天。 備份執行時間。一般放在業務低峰期,比如凌晨執行備份操作。 備份間隔時間。一般推薦一天一備,如果系統不太重要,備份間隔也可以延長。 是否有從庫。有從庫的話,推薦放在從庫上備份,減小對主庫的壓力。

2.Linux系統備份腳本

Linux 系統下,我們可以利用 crontab 定時任務來執行備份腳本,如果你你對 crontab 還不了解,可以參考以下介紹快速學習下。

crontab是一個命令,常見于Unix和類Unix的操作系統之中,用于設置周期性被執行的指令。

格式:

* * * * * command分 時 日 月 周 命令

第1列表示分鐘1~59 每分鐘用*或者 */1表示第2列表示小時1~23(0表示0點)第3列表示日期1~31第4列表示月份1~12第5列標識號星期0~6(0表示星期天)第6列要運行的命令

crontab -e 編輯該用戶下的定時任務設置crontab -l 列出該用戶下的所有定時任務

下面我們來正式書寫備份腳本,廢話不多說,先給出腳本模板:

#!/bin/bash# -------------------------------------------------------------------------------# FileName: mysql_backup.sh # Describe: Used for database backup# Revision: 1.0# Date: 2020/08/11# Author: wang# 設置mysql的登錄用戶名和密碼(根據實際情況填寫)mysql_user = 'root'mysql_password = 'yourpassword'mysql_host = 'localhost'mysql_port = '3306'backup_dir = /data/mysql_backupdt=date +’%Y%m%d_%H%M’echo 'Backup Begin Date:' $(date +'%Y-%m-%d %H:%M:%S')# 備份全部數據庫mysqldump -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_password -R -E --all-databases --single-transaction > $backup_dir/mysql_backup_$dt.sqlfind $backup_dir -mtime +7 -type f -name ’*.sql’ -exec rm -rf {} ;echo 'Backup Succeed Date:' $(date +'%Y-%m-%d %H:%M:%S')

以上腳本可根據實際情況修改,比如備份某一個庫、保留時間變更等等。腳本寫完后要注意調試,調試完成后就可以部署了,比如我們打算每天凌晨2點進行備份,則可以這樣設置定時任務。

# 注意腳本執行權限及修改腳本路徑00 02 * * * sh /root/scripts/mysql_backup.sh > /root/scripts/mysql_backup.log 2>&1

3.Windows系統備份腳本

Windows 系統備份腳本也是類似的,只不過變成了bat腳本,需要設置計劃任務來定時執行。比如我們可以在E盤下創建一個 MySQLdata_Bak 目錄,此目錄下創建 mysql_backup 目錄存放備份文件,mysql_bak.bat 是備份腳本,腳本內容如下(自動刪除7天前的備份文件):

rem auther:wangrem date:20200811rem ******MySQL backup start********@echo offforfiles /p 'E:MySQLdata_Bakmysql_backup' /m backup_*.sql -d -7 /c 'cmd /c del /f @path'set 'Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%''E:mysql5.7.23binmysqldump' -uroot -p123456 -P3306 --default-character-set=utf8 -R -E --single-transaction --all-databases > 'E:MySQLdata_Bakmysql_backupbackup_%Ymd%.sql'@echo onrem ******MySQL backup end********

以上腳本僅供參考,可以根據自己的環境稍加改動。同樣的,腳本調試完成后就可以加入計劃任務了,如果你對 Windows 計劃任務還不了解,可以百度下,也是比較方便簡單的。

4.備份可用性校驗

除了備份,非常重要的一件事情就是驗證備份數據的可用性。想象一下,當你需要進行數據恢復的時候,忽然發現過去的備份數據都是無效的,那得有多難受。很多朋友在寫好備份腳本加到定時任務后,只是檢查下定時任務有執行,備份目錄有文件就不再關注了,往往到了需要使用備份文件的時候才發現備份數據有問題。

目前對于備份文件的數據校驗沒有非常方便的辦法,用的比較多的還是定時把備份文件拉出來做備份恢復演練,例如一個月做一次備份恢復演練就可以有效提高備份文件可用性,心里也踏實。

所以,千萬不要以為有了備份就萬無一失了,平時也要多檢查備份腳本執行是否正確,生產的備份腳本內容是否可用,最好可以定期做恢復演練。

總結:

本篇文章主要分享了 Linux 系統及 Windows 系統下的 MySQL 定時備份腳本,腳本內容比較簡單明了,功能并不復雜,如果你有其他備份需求,可以在此基礎上修改完善。如果這篇文章對你有所幫助的話,請多多分享轉發。

以上就是MySQL備份腳本的寫法的詳細內容,更多關于MySQL備份腳本的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 国产手机在线视频 | 亚洲欧美日韩精品香蕉 | 国产夫妇精品自在线 | 欧日韩美香蕉在线观看 | 综合色久七七综合七七蜜芽 | 日日碰碰 | 亚洲最新在线视频 | 国产在线激情视频 | 日本一级特黄a大片在线 | 亚洲三级大片 | 久久久久久久网站 | 美女被免费网站在线软件 | 欧美另类69xxxxx 视频 | 成年网站免费视频黄 | 国产成人一区二区三区在线视频 | 最新精品国产 | 怡红院免费在线视频 | 久久成人免费视频 | 色综合加勒比 | 亚洲第一网站 | 久久成人视 | 乱人伦中文视频在线 | 欧美成人综合在线观看视频 | 亚洲日本在线看片 | 亚洲高清国产品国语在线观看 | 九九看片| 一级做a爰片久久毛片人呢 一级做a爰片久久毛片唾 | 欧美天堂 | 久久精品二三区 | 欧美日韩一区二区三在线 | 久久久久久久久毛片精品 | 欧美片欧美日韩国产综合片 | 农村三级孕妇视频在线 | 国产在线精品一区免费香蕉 | 国产视频亚洲 | 91福利精品老师国产自产在线 | 91精品国产一区二区三区左线 | 亚洲综合影视 | 欧美高清强视频 | 欧美一级特黄aa大片在线观看免费 | 午夜爽爽|