每天定時備份數(shù)據(jù)庫需要用到Linux的定時任務(wù),利用Linux的crondtab 命令。下面我們來看詳細(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ù)庫文件,將數(shù)據(jù)庫文件以”年-月-日-時-分-秒.sql.gz”的名稱存在根目錄下的mysqlbak文件夾中,數(shù)據(jù)庫的登錄備份信息為:(用戶名:root 密碼:mysqlroot 需要備份數(shù)據(jù)庫名稱為: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
三、加入定時任務(wù)
1、輸入 crontab –e 命令加入
0 3 * * * /etc/mysqlbak.sh //每天凌晨三點(diǎn)執(zhí)行shell文件
然后”:wq!”保存退出
2、輸入 service crond restart 重啟定時服務(wù)
總結(jié)
以上所述是小編給大家介紹的linux每天定時備份數(shù)據(jù)庫并刪除十天前數(shù)據(jù),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- 如何給windows設(shè)置定時任務(wù)并運(yùn)行python腳本
- linux實現(xiàn)mysql數(shù)據(jù)庫每天自動備份定時備份
- Linux shell實現(xiàn)每天定時備份mysql數(shù)據(jù)庫
- MySQL定時備份之使用Linux下的crontab定時備份實例
- Linux VPS備份教程 數(shù)據(jù)庫/網(wǎng)站文件自動定時備份
- 教你用python編寫腳本實現(xiàn)自動簽到