定時自動備份mysql數據庫


定時執行某個任務,即所謂的每x時間(秒、分鍾、小時等)或者每隔x時間做什么,通常我們稱之為cron(計划任務)。cron並不是linux獨有。要想在linux下定時執行某個任務,可以使用linux自帶的cron程序。
要想學習linux下的cron,可以查看這篇博文linux上配置計划任務(cron和crontab)。當然,並不需要熟記計划任務的規則,知道大概的用法就行,因為具體規則可以通過在線cron表達式生成器生成。
下面是我用來定時備份mysql數據庫的執行過程:

新建備份文件並賦予可以執行的權限

    mkdir -p /home/mysql_backup/          #創建目錄,用來保存數據庫備份文件
    touch /home/mysql_backup/mysql_backup.sh   #創建定時備份的腳本程序
    sudo chmod 551 /home/mysql_backup/mysql_backup.sh   #給腳本允許執行的權限

編輯/home/mysql_backup/mysql_backup.sh,在命令行輸入

    vim /home/mysql_backup/mysql_backup.sh

寫入以下內容

    backupdir=/home/mysql_backup
    time=` date +%Y_%m_%d_%H_%M_%S `
    db_user=root
    db_pass=123456
    mysqldump --all-databases -u $db_user -p$db_pass | gzip > $backupdir/$time.sql.gz

編輯crontab,在命令行輸入:

    crontab -e

在最后一行加入定時規則(即每x時間執行、每隔x時間執行),下面輸入的規則表示每天0點執行

0 0 0 1/1 * ?  /home/mysql_backup/mysql_backup.sh

重啟crontab,在命令行輸入:

    service crond restart


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM