http://expert.csdn.net/Expert/topic/1203/1203107.xml?temp=.540539

解决方案 »

  1.   

    to jiezhi:
       你能否用汉语给我解释一下这个问题? 谢谢!
      

  2.   

    这个多半是由于网络问题引起的 ,本身不是oracle的错误,检查一下网络状况和系统核心参数的设定
      

  3.   

    “通信文道结束”是个含义甚宽泛的错误,它仅仅是oracle的客户端前台进程((svrmgrl, sqlplus, RMAN, Oracle Forms etc.) 与其后台进程丢失了连接。
    错误的原因很多。在oracle开发者提到这个词的时候,总以为是网络故障,但是据报告,任何造成后台进程crash的事情都是出现这个错误的原因。该信息或许和其他的错误信息一同出现。如果被损坏的后台进程是oracle的关键进程(PMON, SMON, DBWR etc.),你会得到“oracle不可用”的错误信息。查看你的日志或者查看任何跟踪文件可以帮助你对问题进行诊断。下面是一些造成该错误的原因总结:
    (1)Invalid value for processes parameter in init.ora when starting database
      当然,要解决它,就是把那些参数值调整为有效范围内的值。
    (2)setuid bit needs setting on the oracle executable(Unix only).
    The oracle executable in the $ORACLE_HOME/bin directory should have the permissions: 
       -rwsr-sr-x   1 oracle   dba
    (3)shared_pool_size too small.
      你可以把它设置在200M以上。
    (4)timed_statistics=true.
       你可以把它设置为false。
    (5)An insert into a table which grew into an additional extent allocated in a datafile which was over 2Gb in size.
      这是在你的操作系统文件不允许超过2G的时候才会发生的,而且如果发生了错误,数据库就完蛋了。
    (6)Create table as select .... where there was an invalid procedure or function called from a trigger defined on the table we were selecting from.
    那就是把你所有的过程、函数和包全部编译一遍。
    (7)Make use of Oracle Support / Metalink
      寻求oracle技术支持吧!
      

  4.   

    to jiezhi(西域浪子) : 非常感谢! 问题已经解决了。