shell指令碼:
備份的指令碼比較簡單:
#!/bin/bash
# 定義年 月 日
year=`date +%y`
month=`date +%m`
day=`date +%d`
# 定義備份的目錄
backdir=/bak_1/mysql/$year/$month/$day
# mysql的root密碼
rootpass=123456
# 建立目錄
mkdir -p $backdir
# 獲取資料庫列表
dblist=`ls -p /var/lib/mysql | grep / | tr -d /`
# 備份
for dbname in $dblist
domysqlhotcopy $dbname -u root -p $rootpass $backdir | logger -t mysqlhotcopy
done
複製**
上面的指令碼將
資料庫按"年/月/日"目錄結構備份,將指令碼存為back.sh新增到cron裡每天凌晨3點執行
00 03 * * * root /root/back.sh
下面的是每月3號刪除上個月的備份,存為del_bak.sh,每月3號3點3分執行
03 03 03 * * root /root/del_bak.sh
注意指令碼上傳後,要chmod一下許可權,比如chmod 755 /root/back.sh
#!/bin/bash
# 定義年 月 日
year=`date +%y`
month=`date +%m`
#day=`date +%d`
# 取上乙個月
month=`expr $month - 1`
# 如果是1月,則上一月為12,並且年也減1
if [ $month -eq 0 ]; then
month=12
day=31
year=`expr $year - 1`
fi# 因為備份時小於10月的月份有前導零,所以這裡判斷如果小於10月,則加前導零
if [ $month -lt 10 ]; then
pre=0
fi#獲取要刪除的目錄名
backdir=/bak1/mysql/$year/$pre$month
#刪除了
rm -rf $backdir
mysql每天定時備份指令碼
bin bash 要備份的資料庫名,多個資料庫用空格分開 databases bdm0120810 db bdm0330237 db bdwsd competitive database db goldfilling hdm0110181 db publicdb sfa syb user panel...
用 crontab 每天定時備份 MySQL
用 crontab 每天定時備份 mysql 利用系統 crontab 來定時執行備份檔案,按日期對備份結果進行儲存,達到備份的目的。1 建立儲存備份檔案的路徑 mysqldata mkdir mysqldata 2 建立 usr sbin bakmysql 檔案 vi usr sbin bakmy...
mysql定時備份指令碼 MySql定時備份指令碼
最近需要對某服務的資料庫資料進行備份,因此參考網上教程完成資料庫備份指令碼.因為服務的使用頻率較低,因此設定定時任務,在每天的中午以及午夜時分進行備份操作.bin bash 設定mysql的登入使用者名稱和密碼 根據實際情況填寫 mysql user mysql password mysql hos...