shell_sctipts: 删除mysql备份到最后7日

目前,mysql的备份文件,经过一周左右清理,手动清理会比较费事,所以写了一个简单脚本来实现。

前提介绍:

mysql备份文件放在/usr/bak/sql里面,sql文件的备份名称格式为: mysql-`data +%F-%H-%M-%S`.sql

脚本如下:

#!/bin/bash
#
declare -i NUM=0
declare -i SUM=0

cd /usr/bak/sql
SUM=`ls com* |sort |wc -l`
  if [ $SUM -le 7 ]; then
    echo "There has no more than 7 sql files in this directory."
    exit 2
  fi
let NUM=$SUM-7

for I in `seq 1 $NUM`; do
    ls mysql-* |sort |head -1 |xargs rm -f {}
done

echo "$NUM sql files have been deleted."
echo "The remaining sql flies are:"
ls com* |sort

脚本功能: 删除备份文件到最近7日,显示删除文件的个数,并列出剩余的sql文件。 如果文件个数少于7个,则提醒并退出。

时间: 2024-10-13 22:23:58

shell_sctipts: 删除mysql备份到最后7日的相关文章

自动删除Mysql备份(数组+for)

#!/bin/bash #author:V #Dispaly:auto delete mysql backup. BACKDIR=(/home/11/mysqlbackup/ /home/full/) DAYS=2 FILENAME="full*" LOGNAME=/var/log/autodel.log DATA=`date +%Y%m%d` echo ${BACKDIR[*]} for i in ${BACKDIR[*]} do find $i -name "$FILEN

mysql备份与还原

防伪码:志向不过是记忆的奴隶,生气勃勃地降生,但却很难成长. 一.mysqldump备份结合binlog日志恢复 MySQL 备份一般采取全库备份加日志备份的方式,例如每天执行一次全备份,每小时执行一 次二进制日志备份.这样在 MySQL 故障后可以使用全备份和日志备份将数据恢复到最后一个 二进制日志备份前的任意位置或时间. 1.binlog介绍 mysql的二进制日志记录着该数据库的所有增删改的操作日志(前提是要在自己的服务器上 开启binlog),还包括了这些操作的执行时间.为了显示这些二进

初接触Linux,mysql备份

一.简介 mysqldump是mysql用于转存储数据库的实用程序.它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等 它可以把整个数据库装载到一个单独的文本文件中.这个文件包含有所有重建你的数据库所需要的SQL命令.这个命令取得所有的模式并且将其转换成DDL语法(CREATE语句,即数据库定义语句),取得所有的数据,并且从这些数据中创建INSERT语句.这个工具将你的数据库中所有的设计倒转.因为所有的东西都被包含到了一个文本文件中.这个文本

XtraBackup物理备份 阿里云的Mysql备份方案

XtraBackup物理备份 Percona XtraBackup是世界上唯一的开源,免费的MySQL热备份软件,为InnoDB和XtraDB 数据库执行非阻塞备份.使用Percona XtraBackup,可以实现以下优势: 快速可靠地完成的备份 备份期间的不间断事务处理 节省磁盘空间和网络带宽 自动备份验证 创建热InnoDB备份,而不暂停数据库 对MySQL进行增量备份 将压缩的MySQL备份压缩到另一个服务器 在MySQL服务器之间移动表 轻松创建新的MySQL主从 备份MySQL,而不

mysql备份恢复详解

前言 为什么需要备份数据? 数据的备份类型 MySQL备份数据的方式 备份需要考虑的问题 设计合适的备份策略 实战演练 使用cp进行备份 使用mysqldump+复制BINARY LOG备份 使用lvm2快照备份数据 使用Xtrabackup备份 总结 前言 我们试着想一想, 在生产环境中什么最重要?如果我们服务器的硬件坏了可以维修或者换新, 软件问题可以修复或重新安装, 但是如果数据没了呢?这可能是最恐怖的事情了吧, 我感觉在生产环境中应该没有什么比数据跟更为重要. 那么我们该如何保证数据不丢

MySQL备份与增量备份

MySQL备份与增量备份 01)MySQL备份常用参数 -B 1.会备份创建和删除库的语句:2.备份多个库: --compact 去注释,适合调试 gzip 压缩:# mysqldump -uroot -pqb123 -S /data/3306/mysql.sock -F -B --master-data=2 mydb|gzip > /server/backup/bak_$(date +%F).sql.gz -A 备份所有库 -F 刷新binlog日志 --master-data=1/2 增加b

Mysql备份系列(4)--lvm-snapshot备份mysql数据(全量+增量)操作记录

Mysql最常用的三种备份工具分别是mysqldump.Xtrabackup(innobackupex工具).lvm-snapshot快照.前面分别介绍了:Mysql备份系列(1)--备份方案总结性梳理Mysql备份系列(2)--mysqldump备份(全量+增量)方案操作记录Mysql备份系列(3)--innobackupex备份mysql大数据(全量+增量)操作记录 废话不多说,下面即是使用lvm-snapshot快照方式备份mysql的操作记录,仅依据本人实验中使用而述. 操作记录:如下环

bat批处理实现mysql备份

一.新建bat文件,实现mysql备份功能.(即把txt文件后缀改为.bat) 代码解释: d:                                                                                    //选择d盘cd "D:\MySQL\MySQL Server 5.5\bin" //进入mysql安装目录下的bin文件set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"

mysql 备份类型

如果数据库已经安装在raid01 或者raid10上面,那我们的数据库是否还需要备份 答:需要的,因为我们的raid只是为了保证硬件损坏而不会中断业务.但是软件上的故障或者人为删除数据库.raid是无法对数据进行还原的.因为你删除了的时候,假如是在raid上面,也会删除掉两份数据.因此数据库备份和raid 是两个不同层次的概念. mysql备份如何进行,以及应该备份哪些数据? 备份类型: 我们的数据库非常繁忙,每一秒都有读写操作.假如你执行一个拷贝命令,那你只能拷贝出来当时那个时间段的数据,后面