dmb: 数据库监控及灾备系统(for mysql)_自动备份mysql数据库 shell脚本

最近使用了testlink和mantis这2个测试相关的系统,而他们又全部是基于mysql+php开发的,因此定期备份数据库也是很有必要的,下面是自己写的一个简单的shell脚本。我的mysql是通过xampp这个套件安装的,因为这个套件可以一起安装testlink和mantis需要的php+apache环境。

下面附上脚本,不足之处,请指出,谢谢!

#!/bin/bash

#this script will backup the mysql databases and source code automatically.

#Date: 2013-11-21

#Author: Cullen

#variable list

DbTestCase=testlink #testlink的数据库名称

DbBug=bugtracker #mantis在mysql里的数据库名称

DbUser=root

DbPwd=admin

BackupPath=/root/mysql_backup/

LogFile=/root/mysql_backup/log_file

#check the backup file exists or not

if [ ! -d $BackupPath ]; then

mkdir $BackupPath

fi

for DbName in $DbTestCase $DbBug

do

NewFile="$BackupPath""$DbName"$(date +%y%m%d).tar.gz

DumpFile="$BackupPath""$DbName"$(date ++%y%m%d).sql

OldFile="$BackupPath""$DbName"$(date +%y%m%d --date='1 weeks ago').tar.gz

echo "-----------------------------------------"

echo $(date +"%y-%m-%d %H:%M:%S")

echo "-----------------------------------------"

#create new backup file weekly

if [ -f $NewFile ]; then

echo "New backup file have exists!"

else

/opt/lampp/bin/mysqldump -uroot -padmin $DbName > $DumpFile

tar czvf $NewFile $DumpFile

rm -rf $DumpFile

echo "[$NewFile] backup completely!" >> $LogFile

fi

#remove the obsolete file

if [ -f $OldFile ]; then

rm -f $OldFile

echo "delete the old file: [$OldFile]"

fi

done可以将这个脚本加入到cron例行程序里,就可以自动备份数据库了。

作者:wangyiyan315 发表于2013-11-25 14:58:37 原文链接

阅读:101 评论:0 查看评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值