1、先进入服务看OracleOraDb11g_home1TNSListener和OracleServiceORCL是否打开,如果没打开就将他们打开,如果打开了再连接还是出现 “ORA-12541 无监听程序解决方案”,那么请查看2
2、如果OracleOraDb11g_home1TNSListener和OracleServiceORCL都已经打开,还是出现 “ORA-12541 无监听程序解决方案”,这个时候,你要想一下是是不是从其他地方拷开的配置文件,如果是请查看一下plsql的安装目录例如“E:\PLSQL\instantclient_11_2”的两个文件listener.ora、tnsnames.ora是否配置好
# listener.ora Network Configuration File: E:\PLSQL\instantclient_11_2\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = 填Oracle安装地址请参照上图)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:填Oracle安装地址请参照上图\oracell11.dll")
)
(SID_DESC =
(GLOBAL_DBNAME = 数据库实例请参照上图
)
(ORACLE_HOME = 填Oracle安装地址请参照上图)
(SID_NAME = 数据库实例请参照上图
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 填自己计算机名或者IP)(PORT = 1521))
)
)
ADR_BASE_LISTENER = 填Oracle安装地址请参照上图
3、如果listener.ora、tnsnames.ora已经配置好,还是出现“ORA-12541 无监听程序解决方案”,这个时候需要对监听进行配置,
(1)在开始菜单中打开“Net Configuration Assistance”,选择“监听程序配置”,如下图所示,点击下一步。
点击下一步,选择重新配置,点击下一步
点击下一步,如果出现下面的框选择是,进入下一步,然后再点击下一步
选择下一步,选择“否”点击下一步
配置监听完成,选择下一步选中本地网络服务名配置,点击下一步
选择重新配置,选择下一步,下一步,填写服务器命“数据库名”下一步
选择TCP,下一步,填写计算机名,下一步
点击进行测试,测试通过就可以进行连接数据库了
4、还有一种特别奇怪的问题,就是发现Win+R进入命令行先输入sqlplus后输入用户名、密码发现能够连接oracle数据库,但是
服务中没有OracleOraDb11g_home1TNSListener,这个时候就必须进入注册表增加该项了。
(1)WIN+R 输入regeditj进入注册表
(2)找到HKEY_LOCAL_MACHINE→SYSTEM→CurrentControlSet→Services下新增加一项,信息如下
最后在按照上面3的过程执行一遍,就可以完成数据库连接
5,如果上面4种方法都试过了不行,那笔者又是没有能力处理了,笔者的经验和遇到过的问题就这些,希望有能之士补充,谢谢!