“通信文道结束”是个含义甚宽泛的错误,它仅仅是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技术支持吧!
透明网关配置过程中的问题
透明网关配置并不复杂,在配置过程中有几个问题需要注意一下:
1. 在Oracle 9I中,如果透明网关是后添加的,则需要安装透明网关的补丁,否则会出现下面类似的错误
ORA-02068: following severe error from PUBS
ORA-28511: lost RPC connection to heterogeneous remote agent using SID=%s
ORA-28509: unable to establish a connection to non-Oracle system
2. 网关服务器的 SQL Server 安装时,选择“仅连接”就可以,不需要完整安装。
3. 在 Oradb 的服务器上配置 tnsnames.ora 的时候,host的地址是网关机器的地址,而不是 SQL Server 机器的地址。当然,如果把 SQL Server 的机器当网关除外。
4. 透明网关配置成功后,读取 SQL Server 表的时候,字段名要用双引号引起来,而且要注意大小写,否则会报找不到字段的错误。
本文作者:网友 来源:网络