#!/bin/bash
#author:skycheng #get current date string
datestr=`date +'%Y-%m-%d'`
start_time=`date +'%Y-%m-%d %H:%M:%S'` #get logfile name
logfile='/var/log/fs/drop_tables_'$datestr'.log' if [ ! -f $logfile ]
then
sudo touch $logfile
fi #drop tables table name:sms_send_log_X_yyyymmdd
do_drop_tables()
{
for table in $tables
do
#get table date 'yyyymmdd'
echo $table|grep sms_send_log>/dev/null >&
if [ $? -eq ]
then
table_date=${table:-}
if [ $table_date \< $drop_date ]
then
#echo $table
mysql -u$db_user -p$db_pass -h$db_host $database -e 'drop tables '$table >>$logfile
[ $? -eq ] && echo "drop table:"$table "success"|tee -a $logfile || echo "drop table:"$table "fail"
else
continue
fi
else
continue
fi
done
} echo starttime:$start_time>>$logfile #get three month ago date tables
drop_date=`date -d '3 month ago' +"%Y%m%d"`
echo 'drop_date='$drop_date db_user=dbuser
db_pass=dbpass #get all database tables on host db_host
db_host=db_host
database=database
tables=`mysql -u$db_user -p$db_pass -h$db_host $database -e 'show tables;'|sed 1d` do_drop_tables

shell脚本-删除当天日期前3个月的数据表的更多相关文章

  1. shell脚本删除N天前的目录-----附linux和mac上date命令的不同

    背景: 每日构建的东西.按日期放到不同的目录里. 现在天的构建放到2015-06-01里,明天的就放到2015-06-02里,依次类推.时间久了.须要一个脚本删除N天前的目录.(本例中N=7.即删除一 ...

  2. Debian下自动备份文件并上传到远程FTP服务器且删除指定日期前的备份Shell脚本

    说明:  1.备份目录/home/osyunwei下面所有的文件到/home/osyunweibak里面,并且保存为osyunwei20120701.tar.gz的压缩文件格式(2012_07_01是 ...

  3. bat脚本删除一周前的文件

    bat脚本删除7天前的文件 @echo off forfiles /p D:\logstash-1.4.2\bin\ /m *.log -d -7 /C "cmd /c del /f @pa ...

  4. CentOS Linux自动备份MySQL数据库到远程FTP服务器并删除指定日期前的备份Shell脚本

    说明: 我这里要把MySQL数据库存放目录/var/lib/mysql下面的pw85数据库备份到/home/mysql_data里面,并且保存为mysqldata_bak_2011_11_03.tar ...

  5. liunx 使用crontab定时任务+shell脚本删除tomcat日志elasticsearch日志索引

    由于过多的日志很占用磁盘空间,今天经理让我写一个脚本删除多余的日志.和es索引 定时删除试根据crontab+shell脚本实现的 crontab配置目录 /var/spool/cron/ 该目录下存 ...

  6. Linux shell 自动删除n天前日志

    linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志 ...

  7. shell脚本删除log日志

    删除log文件简单shell脚本 经常会遇到日志把磁盘占满的情况,引起低级故障.我个人在实际工作中,尝试了如下的方法,比较简单,而且快捷有效. #!/bin/bash # /root/log_dele ...

  8. shell 自动删除n天前备份

    Linux自动删除n天前备份Linux是一个很能自动产生文件的系统,日志.邮件.备份等.因此需要设置让系统定时清理一些不需要的文件.语句写法:     find 对应目录 -mtime +天数 -na ...

  9. shell 脚本连接mysql数据库查询database中表的数量和表名

    #!/bin/bash MYSQLHOST="127.0.0.1" MYSQLUSER="root" MYSQLPWD="root" MYS ...

随机推荐

  1. js_字符转Unicode

    在开发中总会遇到关于Unicode的转码和解码,每次都找工具转/解码很麻烦 ,今天在网上get到一个简单的转/解Unicode的函数. var UnicodeFun = { toUnicode: fu ...

  2. [Android]Android布局优化之 ViewStub

    转载请标注:转载于http://www.cnblogs.com/Liuyt-61/p/6602926.html -------------------------------------------- ...

  3. scala函数和方法的差别

    想知道什么差别,把代码复制下来运行看结果 // 1 1 2 3 5 8 13 def f(x:Int) :Int= { ) ) else f(x-)+f(x-) } println(f()) // v ...

  4. 高级php面试题转载

    在网上看到一些高级php 的面试题目.. 最近接连面试了几家公司,有些重要问题记录一下,督促自己学习提高,同时希望给朋友们一些帮助.内容很多,一点点完善,一步步学习..有些是面试被问,有些是招聘要求, ...

  5. tomcat gzip

    ----------- HTTP 压缩可以大大提高浏览网站的速度,它的原理是,在客户端请求网页后,从服务器端将网页文件压缩,再下载到客户端,由客户端的浏览器负责解压缩并浏览.相对于普通的浏览过程HTM ...

  6. Android权限管理

    使用系统权限 为了保护系统的完整性和用户隐私权,Android 在访问受限的沙盒中运行每款应用.如果应用需要使用其沙盒以外的资源或信息,则必须明确请求权限.根据应用请求的权限类型,系统可能会自动授予权 ...

  7. 登录之md5加密

    语句: password = hex_md5(password); 引入js文件: md5.js: /* * A JavaScript implementation of the RSA Data S ...

  8. Asp.Net前台调用后台变量

    1.Asp.Net中几种相似的标记符号: < %=...%>< %#... %>< % %>< %@ %>解释及用法 答: < %#... %&g ...

  9. linux指令tar笔记

    tar 工具常用选项如表所列. 选项  说明 -c  创建存档文件,与-x相斥 -t  列出档案文件的文件列表 -x  解包存档文件,与-c相斥 -A  合并存档文件 -d  比较存档文件与源文件 - ...

  10. ORM查询api

    下面的方法都是对查询的结果进行出理:比如objects.filter.values()... 1)values(*field):返回一个可迭代的字典序列<QuerySet: [{name='小王 ...