问题描述:
客户的软件供应商在电脑上部署软件和调试阶段,使用自研软件连接后端Oracle数据库时,速度总是非常的慢,有时候完全连不上。
电脑系统为Windows 10 LTSC 2019 Version 1809. 报错信息大部分时候均为ORA-12569: TNS:packet checksum failure, 有时候是timeout:
先说我的case的解决方法:
将tnsnames.ora文件所在文件夹添加到系统环境变量。
参考了博客:https://www.cnblogs.com/zjying/p/14708998.html
感谢这位博主
这个报错的排查顺序:
-
确认安装无误
-
确认环境变量设置无误
-
确认tnsnames.ora文件无误
-
Windows关闭实时保护:
windows设置——>更新和安全——>windows安全中心——>病毒和威胁防护——>"病毒和威胁防护"设置——>关闭“实时保护”
排查过程:
一开始资深DBA检查了2天:Oracle的表空间、负载、空间、日志,以及SUSE系统负载和空间,均正常。
第3天我和另一位工程师排除了网络问题,一切正常。
我想到问题应该在客户端,随后找到了上述的博客。因为是困扰了专业的洲软件供应商很久的问题,我直接排除了安装和环境变量,tnsnames.ora文件检查也是没问题的,所以信心满满地过去建议关闭Windows实时保护,结果还是一样。
询问“给别的客户的Win10系统运行这个软件,需要连Oracle的情况多吗,遇到过这个报错吗?”
"Yes, many customers use windows 10" "No."
最后在沉默中一通操作5分钟后我问了一句“顺便问问,环境变量配了吧”,得到潇洒大哥一句"Uh...no, how?"的答复。
心得总结:
遇到问题还是要多角度的逐个排查,特别是没有接触过的问题或领域,就算是某个领域的专家也会有知识盲区,也会犯错,也需要靠不太懂Oracle的支持人员进行支持。