指令碼如下
#!/bin/sh
#備份目錄
dic="/usr/share/db_bak"
y=$(date +%y)
m=$(date +%m)
d=$(date +%d)
#read -p "dbname:" dbname
#if [ ! -n "$dbname" ];then
# echo "not set dbname"
# exit
#fidbname="myfee"
#mysql備份檔案名
filename=$dic/$dbname$y$m$d.sql
echo "bakup name:"$filename
#刪除7天前的備份檔案
for file in `ls -a $dic`
do find -mtime 7 -name "*.tar" -exec rm -rf {} \;
done
#備份資料庫
echo "備份資料庫"
mysqldump -uroot -pxytkj123456654321 $dbname > $filename
dbname為資料庫名
注意授權chmod a+x 指令碼檔案
通過crontab -e 設定定時任務,舉例如下
00 02 * * * /usr/share/sh/db_bak.sh >> /var/log/db_back.log
MySql在linux下的自動備份
mysql在windows下可借助於mysql administrator來完成定期備份,而在linux下就比較麻煩,沒有現成的,就只能自己寫了。1 建立乙個mysql.sh,裡面輸入 bin sh backup mysql database delete file find usr local b...
Linux自動備份MySQL
locate my.cnf etc my.cnf nano etc my.cnfhost localhost user root password yourpassword本來不需要這些操作,直接把使用者名稱密碼寫到備份指令碼裡就可以,但是 mysql 5.6 之後在命令列裡寫密碼會出現警告。nan...
MySql在Linux上實現每天自動備份
mkdir jimisun mysqlbackup usr bin mysqldump opt uroot pjimisun hlocalhost test jimisun mysqlbackup db date f sql opt 引數 uroot u資料庫使用者名稱 h資料庫位址 資料庫名 匯出...