mysql備份腳本并保留7天
腳本需求:
每天備份mysql數(shù)據(jù)庫(kù),保留7天的腳本。
存放在/opt/dbbak目錄中。
腳本名稱(chēng)為database_xxxx-xx-xx.sql
腳本內(nèi)容:
#!/bin/bash export NOW="$(date +"%Y-%m-%d")" export DATA_DIR=/opt/dbbak /usr/local/ywgh/mysql/bin/mysqldump --opt -uroot –p 'mypassword' ywghblog > $DATA_DIR/ywghblog/ywghblog_$NOW.sql find $DATA_DIR/ywghblog -type f -name "*.sql" -mtime +7 -exec rm -rf {} \;
腳本解釋?zhuān)?/strong>
首先定義一個(gè)變量NOW取當(dāng)前的年月日,
在定義一個(gè)目錄的變量DATA_DIR,
然后使用mysqldump命令將要備份的庫(kù)備份到指定的目錄,
最后使用find命令找到指定目錄的sql文件,并且將7天之外的文件刪除。
-mtime + 就是找到7天之外的文件
-mtime – 就是找到7天之內(nèi)的文件
-exec就是執(zhí)行后邊的命令
請(qǐng)根據(jù)自己的需求修改腳本。
知識(shí)點(diǎn)擴(kuò)展:自動(dòng)備份MYSQL數(shù)據(jù)庫(kù)腳本
vi dbbackup.sh在打開(kāi)的編輯器輸入:
#!/bin/bash /usr/local/mysql/bin/mysqldump -uuser -ppasswd databasename > /home/wwwroot/backup/date_$(date '+%Y%m%d').sql
命令的意思是用mysqldump
導(dǎo)出名為databasename
的數(shù)據(jù)庫(kù)到/home/wwwroot/backup/文件夾并命名為date_日期.sql,-u后面的是你的Mysql的用戶(hù)名,-p后面的是Mysql密碼,databasename是要備份數(shù)據(jù)庫(kù)名字,把這三個(gè)替換成自己的。
修改權(quán)限并執(zhí)行備份腳本看能否備份成功:
chmod +x dbbackup.sh sh dbbackup.sh
如果一切檢查沒(méi)問(wèn)題了,就創(chuàng)建定時(shí)任務(wù)自動(dòng)備份你的數(shù)據(jù)吧,輸入命令:
crontab -e
在打開(kāi)的文件輸入定時(shí)任務(wù):
56 23 * * * /root/dbbackup.sh
然后按esc鍵后輸入:wq退出編輯并保存文件。
好了,定時(shí)任務(wù)創(chuàng)建好了,每天23點(diǎn)56分備份執(zhí)行dbbackup.sh備份數(shù)據(jù)庫(kù)。
總結(jié)
以上所述是小編給大家介紹的mysql備份腳本并保留7天,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
MySQL的MaxIdleConns不合理,會(huì)變成短連接的原因
這篇文章主要介紹了MySQL的MaxIdleConns不合理,會(huì)變成短連接的原因,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下2021-01-01mysql 按照時(shí)間段來(lái)獲取數(shù)據(jù)的方法
mysql 按照時(shí)間段來(lái)獲取數(shù)據(jù)的方法,需要的朋友可以參考一下2013-03-03數(shù)據(jù)結(jié)構(gòu)-樹(shù)(三):多路搜索樹(shù)B樹(shù)、B+樹(shù)
這篇文章主要介紹了多路搜索樹(shù)B樹(shù)、B+樹(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04SQL?Group?By分組后如何選取每組最新的一條數(shù)據(jù)
經(jīng)常在分組查詢(xún)之后,需要的是分組的某行數(shù)據(jù),例如更新時(shí)間最新的一條數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于SQL?Group?By分組后如何選取每組最新的一條數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下2022-10-10sql語(yǔ)句示例之case?when作為where條件
這篇文章主要給大家介紹了關(guān)于sql語(yǔ)句示例之case?when作為where條件的相關(guān)資料,在SQL語(yǔ)句中CASE WHEN子句是根據(jù)條件表達(dá)式的結(jié)果來(lái)執(zhí)行不同的邏輯操作,它使用在WHERE子句中,以根據(jù)特定的條件在查詢(xún)結(jié)果中過(guò)濾數(shù)據(jù),需要的朋友可以參考下2023-08-08PHP學(xué)習(xí)散記 2012_01_07(MySQL)
數(shù)據(jù)庫(kù)是Web大多數(shù)應(yīng)用開(kāi)發(fā)的基礎(chǔ)。如果你是用PHP,那么大多數(shù)據(jù)庫(kù)用的是MYSQL也是LAMP架構(gòu)的重要部分2012-01-01Centos7 如何部署MySQL8.0.30數(shù)據(jù)庫(kù)
這篇文章主要介紹了Centos7 如何部署MySQL8.0.30數(shù)據(jù)庫(kù),本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-05-05MySQL版oracle下scott用戶(hù)建表語(yǔ)句實(shí)例
這篇文章主要給大家介紹了關(guān)于MySQL版oracle下scott用戶(hù)建表語(yǔ)句的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02