刪除mysql備份檔案

2021-09-07 10:22:42 字數 1257 閱讀 4428

前言:前篇介紹了mysql的備份方法,但備份不是越多越好,如果磁碟空間不夠用,我需要保留近乙個周的備份就可以了,那就需要刪除備份指令碼了,特別注意刪除操作比較危險,變數傳參要進行二次確認。

#!/bin/bash

#delte mysql back of 7 days ago

#author:jzd

#version:1.0

#mysql back directory

back_dir="/back"

#expire days

expire_day=7

if [ x"$" != "x" -a $ ]; then

cd $ && find $ -maxdepth 1 -type d -ctime +$ -name "20*-*-*_*" -exec rm -rf {} \;

fiexit $?

#!/bin/bash

#刪除日誌指令碼,以檔案修改日期為依據,刪除大於過期天數的檔案

#2017-02-13 auth:jzd ver:1.0

#程式目錄

pwd="/home/aixtest/del_log"

#要刪除的檔案所在目錄,每行乙個目錄

file_dir="$pwd/del_file_dir"

#檔案過期天數

expire="15"

if [ ! -d $ ]; then

mkdir -p $

fiif [ ! -s $ ]; then

echo "請檢查是否在$檔案配置檔案所在目錄."

exit 1

ficd $pwd

while read dir

doif [ ! -d $ ]; then

"請檢查是否純在$目錄."

exit 1

ficd $ && find . -type f -mtime +15 -name "20*-*-*_*" -exec rm -rf {} \;

done < $

exit $?

存放目錄的檔案del_file_dir,後面有類似的情況,往檔案中新增目錄絕對路徑就ok了:

/home/dir1

/home/dir2

/home/dir3

/home/dir4

總結:刪除本身就是危險操作,如果在指令碼中做刪除操作,通過變數傳遞引數,那就更危險了,一定要進行二次確認,防止獲取變數為空造成的誤刪。

SQL自動刪除備份檔案

declare sql varchar 8000 下面是刪除15天前備份檔案的處理 set sql del e databasebackup sql sql rtrim convert varchar,getdate 15,112 bak exec master.xp cmdshell sql de...

mysql增量備份檔案 mysql增量備份

突然說要我研究下增量備份,表示在此之前真的不知道這是什麼意思,網上搜說 是指在一次全備份或上一次增量備份後,以後每次的備份只需備份與前一次相比增加或者被修改的檔案。我通俗理解就是 在前一次的備份基礎上去增刪改。然後就花費了我一下午的時間,中間的心酸就不提了,正式來吧 1 首先進去cmd以管理員身份進...

mysql備份檔案夾 mysql 備份

mysql定期備份是一項重要的工作,但人工操作太繁瑣,也難避免有所疏漏,使用下面的方法即可讓系統定期備份資料。1 建立備份檔案夾 cd www makedir backup 2 編寫執行指令碼 vi autobackup 寫入以下內容 filename date y m d mysql bin di...