当前位置: 首页 > news >正文

MySQL备份Shell脚本

        将此脚本添加到crontab计划中,自动留存最新的两份备份 

#!/bin/bash
# 数据库配置
DB_HOST="localhost"
DB_USER="root"
DB_PASS="Sxbdc123!@#"
DB_NAME="ww"# 备份目录
BACKUP_DIR="/opt/mysqlbak"# 备份文件名称
BACKUP_FILE="${BACKUP_DIR}/backup-$(date +'%Y%m%d%H%M%S').sql"# 执行备份命令
mysqldump -h${DB_HOST} -u${DB_USER} -p${DB_PASS} ${DB_NAME} > ${BACKUP_FILE}
# 获取最新的两个备份文件
BACKUP_FILES=($(ls -t ${BACKUP_DIR}/backup-*.sql))
BACKUP_COUNT=${#BACKUP_FILES[@]}for ((i=0;i<BACKUP_COUNT;i++))do
echo ${BACKUP_FILES[i]}
done
echo $BACKUP_COUNT# 删除多余的备份文件
if [ $BACKUP_COUNT > 2 ]; thenfor (( i=2; i<$BACKUP_COUNT; i++ )); dorm ${BACKUP_FILES[$i]}done
fi

定义变量 :直接定义,变量应为唯一字段

DB_USER="root"

调用变量 :$变量名

echo $DB_USER  #输出变量DB_USER

定义数组 :数组名

BACKUP_FILES

数组赋值 :数组名=(值)

BACKUP_FILES=($(ls -t ${BACKUP_DIR}/backup-*.sql)) #数组的值需要用括号括起来

   ls  -t  ${BACKUP_DIR}/backup-*.sql  按照文件最后修改时间,查找出${BACKUP_DIR}目录下所有前缀为 backup 后缀为 .sql 的文件,放入数组中

循环数组 :for((循环条件))

for ((i=0;i<BACKUP_COUNT;i++))do
echo ${BACKUP_FILES[i]}
done
for(循环条件)
do 
执行的内容
done

数组的输出 :$[数组名[ 下标 ]]

echo ${BACKUP_FILES[i]}

if 判断 :if(判断条件)then fi

if [ $BACKUP_COUNT > 2 ]; thenfor (( i=2; i<$BACKUP_COUNT; i++ )); dorm ${BACKUP_FILES[$i]}done
fi
if [ 判断条件 ]; 
then条件成立所执行方法
fi

http://www.lryc.cn/news/109055.html

相关文章:

  • Python批量查字典和爬取双语例句
  • uni-app、H5实现瀑布流效果封装,列可以自定义
  • vue echart3个饼图
  • LEARNING TO EXPLORE USING ACTIVE NEURAL SLAM 论文阅读
  • item_search-ks-根据关键词取商品列表
  • windows运行WPscan报错:无法打开库libcurl.dll
  • web前端框架Javascript之JavaScript 异步编程史
  • Java多线程(1)---多线程认识、四种创建方式以及线程状态
  • 搭建Django+pyhon+vue自动化测试平台
  • CASAIM自动化平面度检测设备3D扫描零部件形位公差尺寸测量
  • PostgreSql pg_ctl 命令
  • MySQL中的MVCC具体指的是什么?
  • Docker网络模型详解
  • 如何打造属于自己的个人IP?
  • 全网最全最细的jmeter接口测试教程以及接口测试流程详解
  • 【Linux命令200例】whereis用于搜索以及定位二进制文件
  • Elasticsearch:如何将整个 Elasticsearch 索引导出到文件 - Python 8.x
  • cmd 实现启动mysql时保留窗口
  • JavaScript数据结构与算法——栈
  • Elasticsearch分词详解:ES分词介绍、倒排索引介绍、分词器的作用、停用词
  • SpringMVC组件
  • 解决el-dialog弹出时,页面抖动,右侧会缩小的问题(即滚动条被遮罩层覆盖的问题)
  • 【Rust 基础篇】Rust 属性宏:定制你的代码
  • 2023-08-04力扣今日三题
  • 从HTTP代理到Socks5代理:网络安全与爬虫的进化之路
  • 数学建模-元胞自动机
  • 化学合成有机化学 | 逆合成分析软件/数据库汇总
  • 无涯教程-jQuery - Selectable选择函数
  • MySQL修改root密码
  • vue获取近七天、月份、年份的起始日和结束日