清除日志文件的方法

工作中有时候不能直接删除日志文件,如运行中的mysql的日志文件,只能用清空文件内容的方法来清除,例如:

cat /dev/null > ...log

下面的脚本执行的是清除系统日志messages的内容,这个操作只能由具有root权限的用户来完成:

#!/bin/bash
LOG_DIR=/var/log
ROOT_UID=0        # $UID为0的时候,用户才具有root权限
# 必须使用root用户来运行
if [ "$UID" -ne "$ROOT_UID" ]
then
    echo "Must be root to run this script!"
    exit 1
fi
cd $LOG_DIR || {
    echo "Cannot change to necessary directory!" >&2
    exit 1
}
cat /dev/null > messages && echo "Logs cleaned up!"
exit 0
# 退出之前返回0表示成功,返回1表示失败
时间: 2024-10-07 07:01:21

清除日志文件的方法的相关文章

SQL Server 2008 R2:快速清除日志文件的方法

本例,快速清理“students”数据库的日志,清理后日志文件不足1M. USE [master] GO ALTER DATABASE students SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE students SET RECOVERY SIMPLE GO USE students GO --此处需要注意,并非所有数据库的日志文件名都是“数据库名_log” DBCC SHRINKFILE (N'students_log' , 0,TR

查询Oracle日志文件的方法(摘自http://database.51cto.com/art/201010/231519.htm)

Oracle日志文件相信经常使用Oracle数据库的朋友都比较熟悉了,下面将为您介绍的是查询Oracle日志文件的几种方法,供您参考学习. 1.查询系统使用的是哪一组日志文件:select * from v$log; 2.查询正在使用的组所对应的日志文件:select * from v$logfile; 3.强制日志切换:alter system switch logfile; 4.查询历史日志:select * from v$log_history; 5.查询日志的归档模式:select db

删除数据库日志文件的方法

原文:删除数据库日志文件的方法 你曾经有在执行SQL的时候,数据库报事务日志已满,然后执行报错.然后纠结于怎么删除数据库日志,捣鼓半天吗,现在就提供两种删除日志文件的方法,希望能够帮到你! 阅读目录 方法一:手工操作 方法二:存储过程代替手工操作 示例存储过程下载 回到顶部 方法一:手工操作   1.数据库->右键->属性->选项-恢复模式->由完成切换成简单   2.数据库->右键->任务->收缩-文件->由完成切换成简单->文件类型->日志-

清除日志文件里面的内容

清除日志文件里面的内容 逻辑:1.判断是不是root账号操作 2.切换目录是否成功 3.判断清除的文件是否存在. 4.最后exit 0,用于其他脚本判断这个脚本是否执行成功. #!/bin/bash LOG_DIR=/var/log if [ $UID -ne 0 ];then echo "Not Root User" exit 1 fi cd $LOG_DIR || { echo "Cannot change to necessary directory." ex

SQL存储过程删除数据库日志文件的方法

--日志文件收缩至多少M DECLARE @DBLogSise AS INT SET @DBLogSise=0 --查询出数据库对应的日志文件名称 DECLARE @strDBName AS NVARCHAR(500) DECLARE @strLogName AS NVARCHAR(500) DECLARE @strSQL AS VARCHAR(1000) SELECT @strLogName=B.name, @strDBName=A.name FROM master.sys.databases

tomcat Catalina.ou按日保存日志文件分割方法

转:http://tanrishou.blog.163.com/blog/static/1502502009924112045630/ 一.本文基于的环境: 操作系统:Linux(redhat).Windows(XP.2003) JDK版本:j2sdk1.4.2_04 Tomcat版本:tomcat-5.0.28 Cronolog版本:cronolog-1.6.2.tar.gz cronolog-1.6.1-win32.zip 本文修改后的tomcat都是按日保存日志文件,文件格式如:catal

mongodb 2.6.x 清理过大日志文件的方法

一.日志清理步骤 1.使用数据库命令rotate日志,分别登陆到mongod和mongos实例上 # mongo --host localhost:27xxx MongoDB shell version: 2.6.x connecting to: localhost:27xxx/test replicaset003:SECONDARY> db test replicaset003:SECONDARY> use admin switched to db admin replicaset003:S

SQL2014清除日志文件(DBName_Log过大)

SQL2005:Backup Log DBName with no_log  '这里的DBName是你要收缩的数据库名.GOdump transaction DBName with no_log  --清空日志GOUSE DBNameDBCC SHRINKFILE (2)Go --SQL2008(SQL2014也可以):--'在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式. --调整成简单模式USE DBName GO ALTER DATABASE DBName

SqlServer2012清除日志文件

SqlServer在使用中会产生大量的日志文件,当不需要的时候可以进行删除. 删除方式: 右键数据库-->任务-->收缩-->文件 进入收缩文件页面,按照如下配置就可以了 有时候收缩并不成功,这是因为 数据库还没有设置为简单模式,操作如下: 右击数据库名->点'属性'->点'选项'->恢复模式改成'简单'->点'确定'按钮, 之后再重复上面的操作,即可完成. 原文地址:https://www.cnblogs.com/ShaYeBlog/p/9250417.html