mysql在linux自動備份指令碼

2021-08-14 08:21:21 字數 777 閱讀 3096

指令碼如下

#!/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資料庫位址 資料庫名 匯出...