MySQL自動備份

來源:互聯網
上載者:User

標籤:執行   .sh   data   tail   cms   acm   exist   查看   任務   

1、建立自動備份目錄與指令碼

# mkdir /data/MySQLbackup/

# vi backdb.sh

加入以下指令碼內容

#!/bin/bash
/usr/local/mysql/bin/mysqldump -uacm -pacm123 acmdb > /data/MySQLbackup/acmdb_$(date +%Y%m%d_%H%M%S).sql
tar czvf /data/MySQLbackup/acmdb_$(date +%Y%m%d_%H%M%S).sql.tar.gz /data/MySQLbackup/acmdb_$(date +%Y%m%d_%H%M%S).sql
sh checkexist.sh
mv /data/MySQLbackup/acmdb_$(date +%Y%m%d_%H%M%S).sql.tar.gz /data/MySQLbackup/$(date +%Y%m%d)/

第一行,注意mysqldump 指令不在root目錄下,所以要給mysqldump 指令加上絕對路徑。方便後續建立定時任務會找到改指令。

第二行,將匯出到本地的sql指令碼打包壓縮,如果不壓縮也可以,處於自己選擇。

第三行,引入一個檢查指令碼,下面列出。

第四行,將未壓縮的原始指令碼刪除。

注意為backdb.sh添加執行許可權

2、添加檢查指令碼 

# chmod u+x backdb.sh

# vi checkexist.sh

#!/bin/bash
dire="/data/MySQLbackup/$(date +%Y%m%d)"
if [ -d "$dire" ]; then
echo "檔案夾$(date +%Y%m%d)已存在,不再建立"
rm -rf /data/MySQLbackup/acmdb*.sql
else
mkdir /data/MySQLbackup/$(date +%Y%m%d)
fi

3、加入定時任務

# crontab -e

進入編輯操作,添加一下指令碼的絕對路徑,每分鐘執行一次。

*/1 * * * * /data/MySQLbackup/acmsh/backdb.sh

查看定時任務

# crontab -l 

可以追蹤/var/log/cron日誌查看定時任務執行情況。

# tail -f /var/log/cron 

MySQL自動備份

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.