zoukankan      html  css  js  c++  java
  • 【oracle】ORA-03113,ORA-27102处理

    F 20160111 ORA的处理
    1.删除 table,index的统计信息
    analyze table <table> delete statistics;
    analyze index <index> delete statistics;

    desc exec dbms_statis.delete_table_stats;
    desc exec dbms_statis.delete_index_stats;

    exec dbms_statis.delete_table_stats(ownname => '<ownname>',tabname => '<tabname>');
    exec dbms_statis.delete_index_stats(ownname => '<ownname>',tabname => '<tabname>');


    2.ORA-03113
    startup 报错

    ORA-03113:end-of-file on communication channel
    Process ID:16502
    Session ID:570 Serial number:207
    措施:
    1.根据 Process ID,找到Session ID的trace日志文件
    cd $ORACLE_BASE/diag/rdbms/<SID>/<SID>/trace
    find ./ -name "*16502*"

    more ia_arc3_16502.trc
    发现 日志提示错误信息:
    <txt> Errors in file ……
    ORA-19815:WARNING:db_recovery_file_dest_size of …… is 100.00% used,……
    说明 是由于 db_recovery_file_dest_size 被全部耗尽,完成的数据库宕机或无法启动。
    解决措施:
    1.扩大 db_recovery_file_dest_size
    sqlplus /nolog
    conn / as sysdba
    startup nomount;
    alter system set db_recovery_file_dest_size = 8000M;
    2.清理 归档日志
    select instance_name,status from v$instance; --NOMOUNT
    alter database mount; --清理归档日志时,数据库状态至少为 MOUNT
    exit;

    rman target /; --rman target sys/sys
    crosscheck archivelog all; --前提:数据库至少为 MOUNT状态
    --delete archivelog until time 'sysdate-7';
    delete expired archivelog all;
    3.重启数据库
    shutdown immediate
    startup
    5.查看 数据库相关信息
    show parameter spfile; --若数据库启动默认为spfile文件,则alter system 的scope默认为 both.
    show parameter db_recovery_file_dest_size;

    参考:
    Oracle回闪空间不足引起的ORA-03113问题排解 http://wenku.baidu.com/view/755ddc25bcd126fff7050bcd.html
    oracle参数文件 http://wenku.baidu.com/view/44aa817ede80d4d8d05a4f73.html
    Oracle数据库的启动和关闭 http://wenku.baidu.com/view/469bc64b767f5acfa1c7cd96.html

    3.ORA-27102
    startup报错
    ORA-27102:out of memory
    Linux-x86_64 Error:12:Cannot allocate memory
    措施:
    1.查看内存空间
    free -m
    grep -i mem /proc/meminfo
    2 .查看ulimit
    ulimit -l
    ulimit -l unlimited #当前会话有效
    3.释放内存
    echo 1> /proc/sys/vm/drop_caches
    echo 2> /proc/sys/vm/drop_caches
    echo 3 > /proc/sys/vm/drop_caches
    echo 0> /proc/sys/vm/swappiness
    4.系统文件 /etc/security/limits.conf
    oracle soft memlock 10485760
    oracle hard memlock 10485760
    5.reboot主机

  • 相关阅读:
    Web服务器讲解与JavaWeb应用部署(本机,以Tomcat为例)
    DNS与DNS劫持原理、IP、域名、服务器访问浅讲
    MyArrayList——自己实现ArrayList
    Map排序——按key排序,按value排序
    储存对象并按对象某属性排序的几种方法
    常用集合类使用方法
    避免窗口切换闪烁——卡片式布局的使用方法
    [Netbeans]为面板设置背景图片
    JDBC编程之预编译SQL与防注入式攻击以及PreparedStatement的使用教程
    JDBC编程之事务的使用教程
  • 原文地址:https://www.cnblogs.com/greenZ/p/8721917.html
Copyright © 2011-2022 走看看