原文地址:https://www.cnblogs.com/shw0099/p/6908530.html
问题产生背景
今天初步使用水晶报表软件(Crystal Report 2008),报表的生成需要用到Oracle等数据库的表的记录作为数据源。
在进行Oracle的连接时出现了
ORA-12547:TNS:lost contact 和 ORA-12571:TNS:packet writer failure 错误
这种问题,废话不说,直接百度,就找到了我转载的这篇文章的答案。。。。
问题解决步骤
1.首先排除了端口及监听程序的问题
2.修改sqlnet.ora文件(这一步解决了我的问题)
sqlnet.ora文件在如下路径
D:\你的Oracle安装路径\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN\sqlnet.ora
将
SQLNET.AUTHENTICATION_SERVICES= (NTS)
修改为
SQLNET.AUTHENTICATION_SERVICES= (NONE)
即可
3.其它问题(没发生在我身上,哈哈)
修改后上述错误解决,但又出现连接非常慢的问题:连接成功时间超过10分钟,
经过漫长的检查,发现是Oracle相关日志文件过大,导致后续日志信息写入时间过长导致
解决办法:备份原日志文件,并清空日志文件,相关日志文件如下:
X:\app\Administrator\diag\tnslsnr\xx-datebase-1\listener\trace\listener.log
X:\app\Administrator\product\11.2.0\dbhome_2\oc4j\j2ee\OC4J_DBConsole_xx-datebase-1_orcl\log\em-application.log
其中xx-datebase-1代表数据库服务器名。
数据库问题的出现有很多原因,以上方法并不代表同样的问题在其他环境下有效。防止踩坑......