MYSQL备份

备份:

#!/bin/sh

DUMP=/usr/bin/mysqldump                               #mysqldump备份程序执行路径

OUT_DIR=/root/backup_data                             #备份文件存放路径

LINUX_USER=root                                       #系统用户名

DB_NAME=test                                          #要备份的数据库名字

DB_USER=root                                          #数据库用户名

DB_PASS=123456                                        #数据库密码

cd $OUT_DIR                                           #进入备份存放目录

DATE=`date +%Y_%m_%d`                                 #获取当前系统时间

OUT_SQL="$DATE.test.sql"                              #备份数据库的文件名

TAR_SQL="mysql_bak_test.sql_$DATE.tar.tgz"            #最终保存的数据库备份文件名

$DUMP -u$DB_USER -p$DB_PASS $DB_NAME --default-character-set=utf8 --opt -Q -R --skip-lock-tables> $OUT_SQL    

                                                     #备份

tar -zcvf $TAR_SQL  $OUT_SQL                          #压缩为.tar.tgz格式

chown  $LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL      #更改备份数据库文件的所有者

ADDR=219.82.163.167

DATA=/var/samba

lftp -u root,123456 sftp://"${ADDR}:${DATA}" << EOF

put $TAR_SQL

by

EOF

rm -rf $OUT_SQL                                       #删除.sql格式文件

rm -rf $TAR_SQL                                       #删除.tar.tgz压缩文件

=========================================================================================

DUMP=/usr/bin/mysqldump                               #mysqldump备份程序执行路径

OUT_DIR=/root/backup_data                             #备份文件存放路径

LINUX_USER=root                                       #系统用户名

DB_NAME=log_test                                      #要备份的数据库名字

DB_USER=root                                          #数据库用户名

DB_PASS=123456                                        #数据库密码

cd $OUT_DIR                                           #进入备份存放目录

DATE=`date +%Y_%m_%d`                                 #获取当前系统时间

OUT_SQL="$DATE.log_test.sql"                          #备份数据库的文件名

TAR_SQL="mysql_bak_log_test.sql_$DATE.tar.tgz"        #最终保存的数据库备份文件名

$DUMP -u$DB_USER -p$DB_PASS $DB_NAME --default-character-set=utf8 --opt -Q -R --skip-lock-tables> $OUT_SQL                  

                                                     #备份

tar -zcvf $TAR_SQL  $OUT_SQL                          #压缩为.tar.tgz格式

chown  $LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL      #更改备份数据库文件的所有者

ADDR=219.82.163.167

DATA=/var/samba

lftp -u root,123456 sftp://"${ADDR}:${DATA}" << EOF

put $TAR_SQL

by

EOF

rm -rf $OUT_SQL                                       #删除.sql格式文件

rm -rf $TAR_SQL                                       #删除.tar.tgz压缩文件

=========================================================================================

删除7天前备份:

#!/bin/bash

#delete /var/samba/backup_data1 "7 days ago"

OUT_DIR_GAME=/var/samba/backup_data1/game

OUT_DIR=/var/samba/backup_data1/log

find $OUT_DIR_GAME -name "mysql_bak_test*" -type f -mtime +7 -exec rm -rf {} \;

find $OUT_DIR -name "mysql_bak_log_test*" -type f -mtime +0 -exec rm -rf {} \;


你可能感兴趣的:(mysql备份)