最近作产品并发测试的时候,因为日志量比较大,日志系统(Mysql数据库)很快将磁盘空间写满。首先想到用crontab写定时任务监控mysql占用的空间。思路大致如下:
1、首先通过
select round(sum((DATA_LENGTH+INDEX_LENGTH)/1024/1024),3) as size from INFORMATION_SCHEMA.TABLES where TABLE_NAME IN(?)
监控,如果超过阀值则执行清理
2、导出jar备用
3、定义crontab任务 调用jar。参考http://zh.wikipedia.org/wiki/Cron 定义任务脚本
*/1 * * * * /home/archive_log.sh
archive_log.sh内容如下
java -cp /home/archive_log.jar com.XXX.Archive
最后 service crond reload 刷新任务列表
4、遇到的问题总结
开始任务不执行,排查过程如下
1)查看/var/log/cron有输出
2)查看/var/spool/mail/root提示java命令不识别(JAVA_HOME已经定义)
于是在archive_log.sh中加入
JAVA_HOME=/usr/bin/jdk1.7.0_51/ PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib export JAVA_HOME HADOOP_HOME PATH CLASSPATH
另外开始写成java -cp archive_log.jar com.XXX.Archive提示找不到main class,-cp写成绝对路径即可
在实际测试过程可能遇到业务进程将Mysql连接占满,导致检测业务无法获取连接的情况,此时需要在检测代码中持有一个连接不关闭,并运行为守护进程。
相关推荐
centos6.9默认yum无法下载crontab, 整理成功安装后的离线安装软件包上传供大家使用
centos7 crontab 安装包
主要给大家介绍了关于Centos 7下利用crontab定时执行任务的相关资料,文中对crontab进行了详细的介绍,并给出了一些实例代码供大家参考学习,需要的朋友们下面跟着小编一起来学习学习吧。
Python监控CentOS磁盘空间,磁盘空间利用大于80%则发邮件通知。
最近在工作中遇到了一些问题,crontab定时任务居然不执行,后来我在网上找的时候发现网上主要说了这5个原因: 1 crond服务未启动 crontab不是Linux内核的功能,而是依赖一个crond服务,这个服务可以启动当然也可以...
centos7.0安装mysql centos7.0安装mysql centos7.0安装mysql
本篇文章主要介绍了CentOS下采用Crontab实现PHP脚本定时任务,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
主要介绍了centos7中crontab定时计划任务5分钟一次的命令写法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
cronie-1.4.4-12.el6.x86_64.rpm cronie-anacron-1.4.4-12.el6.x86_64.rpm crontabs-1.10-33.el6.noarch.rpm procmail-3.22-25.1.el6.x86_64.rpm sendmail-8.14.4-8.el6.x86_64.rpm
本篇介绍 crontab 设置定时任务,并且把 crontab 加入到开机自启动中,感兴趣的朋友跟随脚本之家小编一起看看吧
整理的centos下的mysql安装希望能帮到你。
centos 下hive连接mysql驱动 ,mysql-connector-java-8.0.26-1.el7.noarch. 使用方法: 1.下载本rpm文件后,上传至你的服务器(虚拟机) 2. rpm -ivh mysql-connector-java-8.0.26-1.el7.noarch进行安装 3.安装完成...
本文档是MySQL官方文档,内容是如何在Centos7环境下用yum工具安装MySQL8。
centos 6.5下安装配置mysql,以及mysql的安全管理和账户管理
Centos crontab 定时任务安装源码
centos定时备份mysql脚本,并实现压缩.需要把sh脚本放入定时任务中。使用说明在附件里面有。centos定时备份mysql脚本,并实现压缩.需要把sh脚本放入定时任务中。使用说明在附件里面有。centos定时备份mysql脚本,并...
CentOS 7 安装 MySQL
主要介绍了centOS6中使用crontab定时运行执行jar程序的脚本,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下