本地连接Oracle远程服务报[08006],[17002] IO错误详解
[08006][17002] IO 错误: The Network Adapter could not establish the connection java.net.ConnectException: Connection timed out: connect. 详解
文接上回,我们聊到了远程连接Oracle数据库问题,在此作拓展,两篇配合食用效果更佳,直达连接戳
IDEA远程连接Oracle数据库流程详解
报错问题展示
lanyy科普点
SID是什么?
SID
是一个数据库的唯一标识符!是建立一个数据库时系统自动赋予的一个初始 ID,SID 主要用于在一些 DBA 操作以及与操作系统交互,从操作系统的角度访问实例名,必须通过 ORACLE_SID,且它在注册表中也是存在的。
如何查看 SID?
- Windows 系统下,打开注册表 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1,在右侧名称列表中名为 ORACLE_SID 的属性值即是 SID
- Linux 或 Unix 系统下,需要切换到 Oracle 用户,输入指令 env 查看
SID 连接方式配置,Test Connection 测试连接
问题纠错分析
常见错误排查:oracle连接不上或其他服务连接不上
-
虚拟机存放在中文目录下:
示范:E:\Virtual\lanyy -
vmware的vmnet8网卡的ip端不在192.168.229.~段(远程工具(如:Xshell)能连接上,就不是该问题),虚拟化容器另作考虑(这里标注一下,见5)
-
服务没有完全启动
oralce -> 等待几秒
hive(底层基于hdfs存储) -> 确认hadoop启动:hdfs、yarn、history server
hive启动后,等待1分钟左右
-
hive的metastore在读mysql中的hive库和表的元数据信息
-
jps查看进程:我构建的虚拟服务本地出现两个runjar,一个为metastore,一个为hiveserver2
-
spark服务
spark依赖于yarn,依赖于hive
部署模式:spark on yarn -> resourcemanager、nodemanager、namenode、datanode
spark on hive模式:spark引擎操作hive数据库和表,hive服务则没有问题 -
防火墙(这个问题比较小众,可以使用下述命令测试)
# 查看防火墙状态 (二选一)
systemctl status firewalld
service iptables status
# 暂时关闭防火墙
systemctl stop firewalld
service iptables stop
# 永久关闭防火墙
systemctl disable firewalld
chkconfig iptables off
- 使用虚拟化容器(如:docker)构建的镜像
我遇到的是这个问题,虚拟镜像时未将hosts文件进行完全映射,致使终端显示hadoop服务已完成启动
但却无法访问web端,排了一圈错回来竟是最小的问题导致,多少有点打脸
个人问题解决
#进入服务
docker exec -it 服务名 bash
#重新在虚拟化容器中映射主机记录的ip,再次访问web页面
vim /etc/hosts
测试连接
解决问题收录
翻阅各类帖子挑选较多认可的实操做下汇总,方便遇到同样问题的友友得到快速解决
Oracle驱动问题
在Driver中移除现有版本驱动,点击右侧+号选择安装低版本的驱动进行尝试,进行测试连接。
测试链接
了解更多知识请戳下:
更多推荐
所有评论(0)