下面一起来了解下mysql手工备份和自动备份的操作方法,相信大家看完肯定会受益匪浅,文字在精不在多,希望mysql手工备份和自动备份的操作方法这篇短内容是你想要的。
/##!/bin/bash
/#######################################################################
/## DATE: 2019-10-22 #
/## AUTHOR: zhangy_j #
/## FUNC: 判断指定数据库名,如未指定则退出该程序 #
/## 根据当前test测试数据库进行备份指定数据库 #
/## 该脚本可单独运行,也可在每日11点和23点自动调用 #
/## #
/##-------------|------------------------------------------------------#
/#######################################################################
/##两种备份,crontab中的自动备份和手工备份
/##默认按照文件datafile.db文件中数据库进行备份,保留30天
/##手动备份方式,dbbak 数据库名,例如:dbbak 11111,手动备份的文件保留7天
#导入方式:mysql -uroot -pxxx gp-manage1 <gp-manage1.sql
/#. /sbin/yujun/pswd >/dev/null 2>&1
/#export BAK=/tmp/yujun >/dev/null 2>&1
/#chmod 755 -R $BAK
/#DATAFILE=${BAK}/datafile.db
/#DATA_DIR=${BAK}
/#BAK_DIR=${BAK}/bak
/#BAK_DT=date +%Y%m%d
/#BAK_LOG=${BAK_DIR}/databak${BAK_DT}_log
/#FILE_DT=dbdate +%H
/#DB_USER='root'
/#############################Backup database host
/#DB_HOST="10.1.1.10"
/#D=$1
/#
/#
/#if [ x"$1" != x ]; then
/# #read -p "请输入${DB_HOST}主机中需要备份的数据库名 : " D
/# #read -p "请输入${DB_HOST}主机中用户用户名 : " U
/# #read -p "请输入${DB_HOST}主机中用户密码 : " P
/#
/#
/#
/# echo "-----【date "+%Y/%m/%d %H:%M:%S"】开始备份 $U 数据库-----"
/# mysqldump --opt --single-transaction --master-data=2 -u$DB_USER -p$pass \
/# -h$DB_HOST ${D} > ${PWD}/${D}.sql
/# echo "-----【date "+%Y/%m/%d %H:%M:%S"】备份完成 $U 数据库-----"
/#
/#
/#else
/#
/# ############################Database backup user
/# DB_USER='root'
/#
/#
/#
/#
/#
/# #Create backup directory
/# if [ ! -d ${BAK_DIR}/${BAK_DT} ]; then
/# mkdir -p ${BAK_DIR}/${BAK_DT} >/dev/null
/# fi
/#
/# if [ ! -f ${DATAFILE} ]
/# then
/# echo "$DATAFILE file does not exist! "
/# echo "请在$DATAFILE中输入所有要备份的数据库名!"
/#
/#
/# exit
/# fi
/#
/# print_log(){
/# MYDATE=date +"%Y-%m-%d %H:%M:%S"
/# case ${2} in
/# 1)
/# printf "%-40s%s\n" "$1" "$3$4$5$6$7$8${9}"
/# printf "%-40s%s\n" "$1" "$3$4$5$6$7$8${9}" >> ${BAK_LOG}
/# ;;
/# *)
/# echo "input error" >> ${BAK_LOG}
/# ;;
/# esac
/# }
/#
/# cd ${BAK_DIR} || exit
/#
/# #read -p "Please enter the database you want to back up : " DB
/#
/#
/# for i in cat $DATA_DIR/datafile.db
/# do
/# print_log "The database to be backed up is named: $i" "1"
/#
/# DB_FILE=${FILEDT}$i.sql
/#
/# echo "-----【date "+%Y/%m/%d %H:%M:%S"】开始备份${i} \
/# 数据库-----" >>${BAK_LOG}
/# mysqldump --opt --single-transaction --master-data=2 -u$DB_USER \
/# -p$pass -h$DB_HOST ${i} > ${BAK_DIR}/${BAK_DT}/${DB_FILE}
/# echo "-----【date "+%Y/%m/%d %H:%M:%S"】备份完成 ${i} 数据库, \
/# 备份文件 ${DB_FILE}-----" >>${BAK_LOG}
/# done
/#
/#fi
看完mysql手工备份和自动备份的操作方法这篇文章后,很多读者朋友肯定会想要了解更多的相关内容,如需获取更多的行业信息,可以关注我们的行业资讯栏目。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。