一、问题描述:
安装好ORACLE服务器端后,利用PL/SQL连数据,提示无监听程序。
二、解决步骤:
1检查防火墙。
将防火墙关闭。
2查看监听服务。
在管理工具->服务中查看监听服务是否已经启动,如果没有,请启动。
3查看注册表。
在HKEY_LOCAL_MACHINE->SYSTEM->CurrentControlSet->services中查看监听程序是否注册。
1)如果没有ImagePath字段,就手动添加这个字段,将TNSLSNREXE的路径添加进去。
我的是F:\app\Administrator\product\1120\dbhome_1\BIN\TNSLSNR。
2)如果整个监听程序都未注册,那么请重新配置监听服务。步骤如下:
<1>打开网络配置工具(Net Configuration Assistant)
<2>选择监听程序配置,点击下一步
<2>删除原有的监听配置,直接点下一步即可。如果没有删除选项则跳过此步进行第<3>步。
<3>添加监听程序,也是直接点击下一步即可。
<4>监听服务添加后,在管理工具->服务中查看监听服务,并重启该服务。
4查看客户端的tnsnamesora文件。
在服务中关闭:
OracleOracle_homeTNSListener 对应于数据库的监听程序
OracleServiceSID 对应于数据库的例程
OracleDBConsoleSID 对应于Oracle Enterprise Manager(OEM)
其中,Oracle_home表示Oracle主目录,如Oracle11g_home1;SID表示Oracle系统标识符,如OracleServiceMAG01的MAG01。
比较好的启动顺序是:OracleOracle_homeTNSListener,OracleServiceSID,OracleDBConsoleSID。
关闭时次序相反。
下面给出了自己写的已经排好顺序的启动和停止服务的两个批处理文件:
//启动Oracle
Start Oraclebat
@echo off
echo 确定要启动Oracle 11g服务吗?
pause
net start OracleOraDb11g_home1TNSListener
net start OracleServiceMAG01
net start OracleDBConsolemag01
echo 启动Oracle 11g服务完成,请确认有没有错误发生。
Pause
//关闭Oracle
Stop Oraclebat
@echo off
echo 确定要停止Oracle 11g 服务吗?
pause
net stop OracleDBConsolemag01
net stop OracleServiceMAG01
net stop OracleOraDb11g_home1TNSListener
echo 停止Oracle 11g服务完成,请确认有没有错误发生。
Pause
以上就是关于Oracle连接对方的数据库,显示无监听程序全部的内容,包括:Oracle连接对方的数据库,显示无监听程序、Oracle数据库如何关闭、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)