ITPub博客

首页 > Linux操作系统 > Linux操作系统 > ORA-00312: 错误

ORA-00312: 错误

原创 Linux操作系统 作者:阿日 时间:2009-07-15 09:27:32 0 删除 编辑
问题:
SQL> startup
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             218106756 bytes
Database Buffers          385875968 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。
ORA-16038: 日志 1 序列号 68 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 1 线程 1: 'D:\ORACLE\ORADATA\ORCL10G\REDO01.LOG'


解决:
1.查看一下alert.sid
可以看到有一行:
Errors in file d:\oracle\admin\orcl10g\udump\orcl10g_ora_2052.trc:
ORA-19815: 警告: db_recovery_file_dest_size 字节 (共 2147483648 字节) 已使用 100.00%, 尚有 0 字节可用。

说明db_recovery_file_dest_size 已经没有空间了



*查看一下alert.sid
可以看到有一行:
Errors in file d:\oracle\admin\orcl10g\udump\orcl10g_ora_2052.trc:
ORA-19815: 警告: db_recovery_file_dest_size 字节 (共 2147483648 字节) 已使用 100.00%, 尚有 0 字节可用。

说明db_recovery_file_dest_size 已经没有空间了

查看一下db_recovery_file_dest_size 大小

SQL> show parameter db_recovery_file_dest_size;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------
db_recovery_file_dest_size           big integer 2G

可以通过增大db_recovery_file_dest_size参数值

SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=4G SCOPE=BOTH;

然后启动数据库即可.

*可以利用rman来删除过期的归档日志文件,以释放空间
rman target /
rman>crosscheck archivelog all;
rman>delete expired archivelog all;

这时可能会出现删不了的情况,可以去flash_recovery_area目录下手动删除后重新进行如上操作即可.

利用rman可自定义删除哪天的日志,如要删除7天以前的日志:
rman>delete archivelog all complete before 'sysdate-7';
如果要删除最近几天的日志:
rman>delete archivelog from time 'sysdate-7';(最近7天的)


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

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

注册时间:2007-12-26

  • 博文量
    35
  • 访问量
    144453