mysql数据库自动备份

1、vi /home/wangcn/auto_log.sh
#!/bin/bash
#Shell Command For Backup MySQL Database Everyday Automatically By Crontab

USER=root
PASSWORD="[email protected]"
DATABASE="base_info"
HOSTNAME="192.168.1.233"

[email protected]

BACKUP_DIR=/home/rise1/software/backup/ #备份文件存储路径
LOGFILE=/home/rise1/software/backup//data_backup.log #日记文件路径
DATE=`date ‘+%Y%m%d-%H%M‘` #日期格式(作为文件名)
DUMPFILE=$DATE.sql #备份文件名
ARCHIVE=$DATABASE$DATE.sql.tgz #压缩文件名
OPTIONS="-h$HOSTNAME -u$USER -p$PASSWORD $DATABASE"
#mysqldump -help

echo "开始删除前一日数据文件"
rm -rf /home/rise1/software/backup/*

#判断备份文件存储目录是否存在,否则创建该目录
if [ ! -d $BACKUP_DIR ] ;
then
mkdir -p "$BACKUP_DIR"
fi

#开始备份之前,将备份信息头写入日记文件
echo " " >> $LOGFILE
echo " " >> $LOGFILE
echo "———————————————–" >> $LOGFILE
echo "BACKUP DATE:" $(date +"%y-%m-%d %H:%M:%S") >> $LOGFILE
echo "———————————————– " >> $LOGFILE

#切换至备份目录
cd $BACKUP_DIR
#使用mysqldump 命令备份制定数据库,并以格式化的时间戳命名备份文件
mysqldump $OPTIONS > $DUMPFILE
#判断数据库备份是否成功
if [[ $? == 0 ]]; then
#创建备份文件的压缩包
tar czvf $ARCHIVE $DUMPFILE >> $LOGFILE 2>&1
#输入备份成功的消息到日记文件
echo “[$ARCHIVE] Backup Successful!” >> $LOGFILE
#删除原始备份文件,只需保留数据库备份文件的压缩包即可
rm -f $DUMPFILE
else
echo “Database Backup Fail!” >> $LOGFILE
fi
#输出备份过程结束的提醒消息
echo “Backup Process Done”
2、chmod 777 -R /home/wangcn/
3、crontab -e
*/1 * * * * /home/wangcn/auto_log.sh >/dev/null 2>&1

时间: 2024-08-07 08:21:53

mysql数据库自动备份的相关文章

Windows Server服务器端MySQL数据库自动备份

1.给root账户授权所有sql权限 grant all privileges on *.* to [email protected]"%" identified by "."; flush privileges; 2.建立bat批处理文件 @echo off set path=%path%;D:\Program Files\MySQL\MySQL Server 5.5\bin set y=%date:~0,4% set m=%date:~5,2% set d=%d

设置mysql数据库自动备份

由于项目需要,在windows下的mysql实现数据库自动备份.经资料查询和尝试,得出方法有两种: 1.使用windows自带的任务计划,然后定时执行一个数据库备份的脚本. 2.使用mysql管理工具navicat配置数据库的备份 这里,由于第二种方法比较简单实用,我就简单描述下第二种方法(因为简单). 工具: navicat for mysql mysql 5.5 步骤: 1.打开navicat客户端,连上mysql后,双击左边你想要备份的数据库.点击“计划”,再点击“新建批处理作业”. . 

mysql数据库自动备份脚本分享

前几篇博客已经相继公开了去转盘网的所有技术细节,如下: 百度网盘爬虫 中文分词算法 邀请好友注册 js分页部分代码 这篇博客我将继续公开数据库自动备份的代码.可以这么说,没有数据库,一切就是个蛋,没有数据库备份,一切还是个蛋,你可以想象数据库备份多么重要.不会linux,不会写shell的朋友麻烦先去补补.不过你说我牛逼,不补也能看懂,那没问题,哈哈,废话不说了.老规矩,上代码: #!/bin/bash time=$(date +"%d-%m-%Y") pre=/home/ubuntu

mysql数据库自动备份,并发送邮件通知

一 前提 系统环境:centos6.1 脚本作用:备份指定服务器上的指定数据库,并通过scp传送到另一台备份主机,然后发送备份是否成功邮件到指定邮箱 思路:首先在备份脚本中把备份报告导出为一个db_backup.log文件,然后邮件脚本会把这个log内容作为邮件内容发送给指定用户,也就实现了邮件通知 说明:如果需要备份到远程主机,需要首先做好ssh密钥认证,scp要使用到 二 备份脚本 备份脚本用法:如果需要备份某个数据库,在脚本后面添加一条备份命令,像下面这样 backup_db  10.90

Linux下实现MySQL数据库自动备份

1.给mysql创建用户备份的角色,并且授予角色SELECT, RELOAD, SHOW DATABASES, LOCK TABLES等权限. mysql> create user 'backuper'@'localhost' identified by '********'; Query OK, 0 rows affected (0.00 sec) mysql> grant SELECT, RELOAD, SHOW DATABASES, LOCK TABLES on *.* to backu

Java实现Mysql数据库自动备份

最近项目中有一个这样的需求,要求定时备份数据库.看了一些网上的资料,了解到主要思路是是使用java中的Runtime类的exec()方法,可以直接调用windows的cmd命令,参数就是Mysql的备份命令. 一.Runtime类 首先说说这个神奇的Runtime类,主要封装了Java程序的运行环境,每一个Java程序都有一个与之对应的Runtime实例,应用程序通过该对象与运行时环境相连,应用程序不能创建自己的Runtime实例,但可以通过getRuntime()方法获得与之关联的Runtim

centos下mysql数据库自动备份并删除N天前备份文件

1.创建bak_xx_mysql.sh文件 #!/bin/bash# Name:bak_xx_mysql.sh# XX数据库文件备份#db_user="root"db_passwd="root"db_name="db_name"#mysqldump 目录mysql_bin_dir="/alidata/server/mysql-5.6.21/bin/mysqldump"# 备份文件目录backup_dir="/alid

MYSQL数据库自动本地/异地双备份/MYSQL增量备份

构建高安全电子商务网站之(网站文件及数据库自动本地/异地双备份)架构图 继续介绍Linux服务器文件备份,数据库备份,数据安全存储相关的电子商务系统架构.针对安全性有多种多样的解决方案,其中数据备份是重中之重的首要工作.电 子商务网站更加注重考虑数据安全,数据备份方案,包括本地备份.异地备份架构.其中Linux服务器的备份方案非常多,本文介绍一个大众化适用的解决方 案,通过编写Shell脚本来完成自动备份.本架构包括备份网站文件.数据库,自动本地备份并FTP上传备份脚本,完成相应本地备份.异地备

mysql学习之旅-数据库自动备份-测试环境搭建

#终于知道什么叫不会走先会跑了,刚开始接触第一个case就是数据库自动备份,我可是都没安装过啊?!   发完牢骚开始干活 首先,因为业务已经上线,不能随便动,先搭建测试环境吧 规划一下 版本:mysql-5.7.14-winx64.zip  从官网下载 系统:windows 7   64bit 解压缩到本地目录 D:\app\mysql57    #注意,非系统盘,非中文 将my-default.ini 复制一份重命名为my.ini  添加如下内容,先保证能开启服务 # For advice o