使用oracle数据库的过程中发现日志过大,挤满磁盘。请问有什么办法可以挪处或者删除日志文件吗?

解决方案 »

  1.   

    做个RMAN全备 然后在清........删除就行呵呵
      

  2.   

    RMAN 备份后执行RMAN> delete obsolete;RMAN 会自动删除介质恢复时不需要的归档日志。
      

  3.   

    谢谢大家的回帖,不过客户只是告诉我日志过大.却没有说清楚是什么日志.请问:什么日志可能大到挤满十几G的硬盘?有没有可能是客户的oracle没有设置自动归档,所以导致重作日志过大?ruihuahan大哥说是可以删除不需要的归档日志,可是归档日志有那么大吗?还请各位大哥,高手多多指点。
      

  4.   

    如果是自动归档日志的话,是很大的,每一个归档日志大约有100M左右(Oracle9I+Windows 2003的默认安装)你可以将一些日志剪切到你的移动硬盘上,如果要恢复的话,再拷贝回去也可以的,我记得有人是将两台服务器做成一摸一样的(SID,密码相同,数据文件是从运行着的服务器拷贝到备用服务器的,而且都是自动归档模式),一台正常运行,另一台的Oracle服务关闭,然后将运行的归档日志拷贝到Oracle关闭的那台相关路径下,如果运行着的服务器坏了,可以启用另外一台。
    根据这个原理,应该可以将归档日志剪切掉。
      

  5.   

    我是一个新手,各位前辈可不可以告诉我,我要用RMAN备份和删除时都要用到哪些语句,谢谢!
      

  6.   


    没有设置自动归档日志是不可能会很大的,只有设置了自动归档才会导致归档日志的增长,才会出现磁盘不够用的情况。
    我安装在Windows 2003下面的Oracle 9I,看你的数据库DML和DDL的多上决定归档日志的多少,如果默认的话,那么他的大小是100M,如果一天有10次切换的,那么就有了1G的归档日志,如果10天的话,那么就有了10G.....
    增长速度是很快的,如果你没有设置成自动归档模式的话,那么基本上是不会出现日志挤满硬盘空间的。你看看:
    1、在Oracle服务器端进入DOS页面
    2、输入Sqlplus /nolog,回车
    3、输入conn / as sysdba,回车
    4、archive log list
    如果是设为自动归档模式,那么大概原因就是如此。做RMAN的话,可以看看http://topic.csdn.net/u/20081017/00/25b78c93-6df9-4f7b-b691-04ffb0f13dbb.html
      

  7.   

    先将数据库备份下来。。然后利用rman把不需要的日志文件删除