發新話題

Shell 備份dump 資料庫 /usr/bin/mysqldump

Shell 備份dump 資料庫 /usr/bin/mysqldump

/usr/bin/mysqldump -R -c -Q -q
備份是為了以防萬一,就寫了一個 Shell 來做備份,Shell 的運作如下:

   1. dump 資料庫的文字檔
   2. 壓縮文字檔
   3. E-mail 備份壓縮檔到 Gmail

shell 內容如下 (bak-uninvc.sh):
#!/bin/bash

DATE=`date +%Y%m%d`
PATH=/home/tyroneyeh/backup/db

/usr/bin/mysqldump -u root dbname zk_uninvc_rec > ${PATH}/${DATE}-zk_uninvc_rec.sql
/usr/bin/mysqldump -u root  dbname zk_uninvc_db > ${PATH}/${DATE}-zk_uninvc_db.sql

/bin/tar -cPf ${PATH}/uninvcbakdb-${DATE}.tar ${PATH}/${DATE}-*.sql
/bin/bzip2 -9 ${PATH}/uninvcbakdb-${DATE}.tar
/bin/rm ${PATH}/${DATE}-*.sql

/usr/bin/uuencode ${PATH}/uninvcbakdb-${DATE}.tar.bz2 uninvcbakdb-${DATE}.tar.bz2 | /bin/mail -s "Uninvoice ${DATE} Backup" xxxxxx@gmail.com

在 Gentoo Linux 的 mail 指令需安裝 mail-client/mailx,使用 emerge mailx 來安裝即可。 在 /etc/cron.daily  建立一個 Symlink 或 Shell 直接放到裡面,這樣每天都會備份資料到 Gmail 囉。

記得要用 chmod +x bak-uninvc.sh 將 Shell 變可執行檔!

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。