實例:mysql
編寫一個shell腳本天天16:30備份mysql數據並壓縮打包(打包文件按照當天的日期命名)放到/root/datasql
#cd /root #vim mysqlbackup.sh #!/bin/bash time=`date +%Y-%m-%d` backupdir=/root/data if [ ! -d "$backupdir" ] then mkdir -p $backupdir fi if [ -f "$time"_all_databases.sql ] then rm -rf "$time"_all_databases.sql fi cd $backupdir /usr/bin/mysqldump -uroot -pmysql.rzrk --all-databases > "$time"_all_databases.sql /bin/tar -czf "$time"_all_databases.sql.tar.gz "$time"_all_databases.sql rm -rf "$time"_all_databases.sql sed -i '/mysqlbackup.sh/d' /var/spool/cron/root echo '30 16 * * * /root/mysqlbackup.sh' >> /var/spool/cron/root #chmod +x mysqlbackup.sh
註釋:shell
1 mysqldump --all-databases 表示備份mysql中全部的數據庫。數據庫
2 date +'%Y-%m-%d' == date +%Fvim
3 crontab -l 編輯的配置文件在/var/spool/cron下(redhat的),suse的在/var/spool/cron/tabs下bash