zoukankan      html  css  js  c++  java
  • ora00257错误处理方法

      关于登录oracle出现ora -00257 归档程序错误的解决方法,

    具体如下:

    1. 用sys用户登录

    sql>sys/sys as sysdba(sqlplus/ as sysdba)

    2. 看看archiv log所在位置
    SQL> show parameter log_archive_dest;

    NAME                                     TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    log_archive_dest_10             string

    log_archive_dest_state_1                   string

    log_archive_dest_state_2                   string
    3. 一般VALUE为空时,可以用archive log list;检查一下归档目录和log sequence

    4. 检查flash recovery area的使用情况,可以看见archivelog已经很大了,达到96.62
    SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;

    注:V$FLASH_RECOVERY_AREA_USAGE必须是10.2以上的版本才有此视图,低于此版本的这是select提示该视图或表不存在,因为我现在用的版本是9i的所有无法显示。

    5. 计算flash recovery area已经占用的空间
    SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

    如果在第四中你的oracle能正常执行该语句,那么你可以接着进行第五步操作,反之则就直接跳过第五步。

    6. 找到recovery目录, show parameter recover
    SQL> show parameter recover;

    recovery_parallelism                   integer         0

    也是是因为版本太低,所有查询结果没有显示归档位置用的值和存放的位置

    7.根据我的oracle的情况,我试着执行了下alter database clear unarchived logfile group 1

    SQL> alter database clear unarchived logfile group 1;

    alter database open;

    执行到这一步,我的问题解决了,原来是因为数据库里有不能归档的日志,也许对这个错误还有别的解决方法,所以以上我只是针对我遇到的情况来进行描述。

  • 相关阅读:
    SQL语句的执行顺序
    凭兴趣求职80%会失败,为什么
    Google Analytics:为链接点击设定事件追踪的方法
    org/hamcrest/SelfDescribing
    Idea使用记录--添加Problems&&解决Autowired报错could not autowire
    RBAC(Role-Based Access Control)基于角色的访问控制
    如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)?
    记录使用Hibernate查询bean中字段和数据库列类型不匹配问题
    Java添加自定义注解
    JS获取select的值
  • 原文地址:https://www.cnblogs.com/ifruo/p/2862786.html
Copyright © 2011-2022 走看看