每天定時(shí)備份數(shù)據(jù)庫(kù)需要用到Linux的定時(shí)任務(wù),利用Linux的crondtab 命令。下面我們來(lái)看詳細(xì)步驟:
一、寫好shell腳本 mysqlbak.sh
#!/bin/sh
mysqldump -uroot -pmysqlroot xhblt | gzip > /mysqlbak/`date '+%Y-%m-%d_%H:%M:%S'`.sql.gz
find /mysqlbak/ -mtime +10 -name "*.sql.gz" -exec rm -rf {} \;
腳本解析:
mysqldump -uroot -pmysqlroot xhblt | gzip > /mysqlbak/`date '+%Y-%m-%d_%H:%M:%S'`.sql.gz
此舉含義為下載數(shù)據(jù)庫(kù)文件,將數(shù)據(jù)庫(kù)文件以”年-月-日-時(shí)-分-秒.sql.gz”的名稱存在根目錄下的mysqlbak文件夾中,數(shù)據(jù)庫(kù)的登錄備份信息為:(用戶名:root 密碼:mysqlroot 需要備份數(shù)據(jù)庫(kù)名稱為:xhblt)
find /mysqlbak/ -mtime +10 -name "*.sql.gz" -exec rm -rf {} \;
含義為:找到根目錄下mysqlbak文件夾中的數(shù)據(jù)然后刪除10天前的數(shù)據(jù)
二、目錄創(chuàng)建以及文件上傳
1、在根目錄下創(chuàng)建文件夾 mysqlbak作為備份目錄,目錄權(quán)為777
mkdir /mysqlbak;
chmod 777 /mysqlbak;
2、文件上傳
將寫好的shell腳本放在 /etc 目錄下,并且賦予權(quán)限 777
chmod 777 /etc/mysqlbak.sh
三、加入定時(shí)任務(wù)
1、輸入 crontab –e 命令加入
0 3 * * * /etc/mysqlbak.sh //每天凌晨三點(diǎn)執(zhí)行shell文件
然后”:wq!”保存退出
2、輸入 service crond restart 重啟定時(shí)服務(wù)
總結(jié)
以上所述是小編給大家介紹的linux每天定時(shí)備份數(shù)據(jù)庫(kù)并刪除十天前數(shù)據(jù),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- 如何給windows設(shè)置定時(shí)任務(wù)并運(yùn)行python腳本
- linux實(shí)現(xiàn)mysql數(shù)據(jù)庫(kù)每天自動(dòng)備份定時(shí)備份
- Linux shell實(shí)現(xiàn)每天定時(shí)備份mysql數(shù)據(jù)庫(kù)
- MySQL定時(shí)備份之使用Linux下的crontab定時(shí)備份實(shí)例
- Linux VPS備份教程 數(shù)據(jù)庫(kù)/網(wǎng)站文件自動(dòng)定時(shí)備份
- 教你用python編寫腳本實(shí)現(xiàn)自動(dòng)簽到