连接Oracle数据库的例子网上有很多,现在就针对连接Oracle数据库测试及常见的连接排除方法发表下个人建议。
连接Oracle数据库的测试
可在配置本地服务名时进行测试,也可用第三方客户端工具,如PL/SQL Developer,最方便的是用ORACLE自带的SQLplus工具,以下利用SQLplus进行测试:
C:sqlplus/nolog
已连接。
客户端连接服务器端常见问题排除方法
要排除客户端与服务器端的连接Oracle问题,首先检查客户端配置是否正确(客户端配置必须与数据库服务器端监听配置一致),再根据错误提示解决。下面列出几种常见的连接问题:
1、ORA-12541: TNS: 没有监听器:显而易见,服务器端的监听器没有启动,另外检查客户端IP地址或端口填写是否正确。启动监听器:
$lsnrctlstart或C:lsnrctlstart
2、ORA-12500: TNS: 监听程序无法启动专用服务器进程:对于Windows而言,没有启动ORACLE实例服务。启动实例服务:
C:oradim–startup-sidmyORACLE
3、ORA-12535: TNS: 操作超时:出现这个问题的原因很多,但主要跟网络有关。解决这个问题,首先检查客户端与服务端的网络是否畅通,如果网络连通,则检查两端的防火墙是否阻挡了连接。
4、ORA-12154: TNS: 无法处理服务名:
检查输入的服务名与配置的服务名是否一致。另外注意生成的本地服务名文件(Windows下如D:ORACLEora92 etworkadmin nsnames.ora,Linux/Unix下$ORACLE_HOME/network/admin/tnsnames.ora)里每项服务的首 行服务名称前不能有空格。
5、ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的SERVICE_NAME打开Net Manager,选中服务名称,检查服务标识栏里的服务名输入是否正确。该服务名必须与服务器端监听器配置的全局数据库名一致。
6、Windows下启动监听服务提示找不到路径:
用命令或在服务窗口中启动监听提示找不到路径,或监听服务启动异常。打开注册表,进入HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/ORACLEOraHome92TNSListener项,查看ImagePath字符串项是否存在,如果没有,设定值为D:ORACLEora92BINTNSLSNR,不同的安装路径设定值做相应的更改。这种方法同样适用于ORACLE实例服务,同上,找到如同HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/ORACLE ServiceMYORACLE项,查看ImagePath字符串项是否存在,如果没有,则新建,设定值为d:ORACLEora92inORACLE.EXE MYORACLE。
以上就连接Oracle客户端与服务器端常见的一些问题发表了个人看法,当然不能囊括所有的连接Oracle数据库异常。解决问题的关键在于方法与思路。