ITPub博客

首页 > 数据库 > Oracle > 解决Windows上alert日志和listener日志不能超过4GB的问题

解决Windows上alert日志和listener日志不能超过4GB的问题

原创 Oracle 作者:旧梦依稀 时间:2014-05-22 16:02:14 0 删除 编辑

前几天又遇到Windows上面listener日志和alert日志达到4G,导致数据库宕机的问题,所以自己捉摸了一个自动清理的脚本。

@echo off
rem FileSize以KB为单位指定当日志文件达到多大时进行截断,默认是2GB
rem FileBakName指定备份的日志文件名,不能使用全路径!
rem FileBak备份日志的文件名,需指定全路径!
rem FileName需要截断的日志文件,需指定全路径!

set /a FileSize=2*1024*1024
set FileBakName="alter.log.bak"
set FileBak="D:\工作文档\temp\alter.log.bak"
set FileName="D:\工作文档\temp\alter.log"
if exist %FileName% (
for %%i in (%FileName%) do (
  set /a CurrentSize=%%~zi/1024
  if %CurrentSize% gtr %FileSize% (
    if exist %FileBak% (
      del %FileBak%
    )
    ren %FileName% %FileBakName%
  )
)
)


很原始,只能监控一个日志文件,而且要手动设置几个参数,最后加入到计划任务里面就行了。


这个问题如果是在linux下可以用logrotate工具解决,logrotate是一个让日志文件自动按周期归档的工具,以避免日志文件过大。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28998293/viewspace-1167667/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-06-24

  • 博文量
    46
  • 访问量
    195569