与虚拟机连接出现ora-12514错误解决方法
2014-11-21 12:52
363 查看
谈到ora-12154问题,网上有一大堆解决方法,原因基本统一:tns或listener配置不正确。对于listener配置不正确的一般较少发生,大多数人都是按照默认配置一路“下一步”过来的,基本都是orcl的服务名,如果说本地可以连通orcl,别的机子就连不通那应该跟listener关系不大。大部分都是tns配置不正确。我遇到的现象是:在本机建了一个2003的虚拟机,虚拟机里面装了oracle10g,默认配置。本机只装了oracle10g的客户端,当我以前用本机连接局域网内数据库的orcl服务(数据库与局域网内数据库一样)时没有问题,但是在连接虚拟机中的orcl服务却连不通,总是报ora-12154错误。而虚拟机内,plsql却可以连接虚拟机oracle,但是不能连接本机所在局域网内的oracle。
按照如下过程,一般都能解决:
1. 在虚拟机内开cmd,用lsnrctl status查看监听器监听的服务
2. 如看到监听服务“orcl”,那在本机的tns配置中(SERVICE_NAME = orcl)必须写orcl;如果想要自定义,则在虚拟机内的listener配置中就要加入自定义服务名,记得要重启监听服务:lsnrctl reload
3. 最后形成的配置文件如下
虚拟机listener:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = test) 自定义服务名
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1) db_home
(SID_NAME = test)
)
(SID_DESC =
(PROGRAM = extproc)
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1) )
)
本机tns:
ORCL_XNJ =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 182.12.15.232)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = test) 与自定义服务名对应
)
)
再次连接,问题解决!
记住,一定从最简单的原因找起,不要一上去就看到网上的什么改process数、注册表之类的,要想想本机能连为什么通过网络就不行,还是定位问题。
按照如下过程,一般都能解决:
1. 在虚拟机内开cmd,用lsnrctl status查看监听器监听的服务
2. 如看到监听服务“orcl”,那在本机的tns配置中(SERVICE_NAME = orcl)必须写orcl;如果想要自定义,则在虚拟机内的listener配置中就要加入自定义服务名,记得要重启监听服务:lsnrctl reload
3. 最后形成的配置文件如下
虚拟机listener:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = test) 自定义服务名
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1) db_home
(SID_NAME = test)
)
(SID_DESC =
(PROGRAM = extproc)
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1) )
)
本机tns:
ORCL_XNJ =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 182.12.15.232)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = test) 与自定义服务名对应
)
)
再次连接,问题解决!
记住,一定从最简单的原因找起,不要一上去就看到网上的什么改process数、注册表之类的,要想想本机能连为什么通过网络就不行,还是定位问题。
相关文章推荐
- oracle连接中出现错误ORA-12541,ORA-12514,ORA-01017的解决方法
- oracle连接中出现错误ORA-12541,ORA-12514,ORA-01017的解决方法
- 与虚拟机Oracle连接出现ora-12154问题的解决方法
- 虚拟机部署度量快速开发平台服务端出现ora-27101错误的一个解决方法
- 虚拟机中ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法
- 虚拟机部署度量快速开发平台服务端出现ora-27101错误的一个解决方法
- plsql developer连接数据库时出现ORA-01033错误的解决方法
- Oracle 10g中“ERROR-ORA-12514 TNS 监听程序当前无法识别连接描述符中请求的服务”错误的解决方法
- 连接Oracle远程数据库错误:ORA-12541,ORA-12514,ORA-01017的解决方法!
- Delphi使用BDE连接远程MS SQL SERVER 2000数据库时出现“Db-library network communciations layer not loaded.”错误的解决方法
- ADODB连接access是出现 80004005 错误的解决方法
- 连接远程ms sql server 2000企业版时出现错误:10061的解决方法
- Oracle远程无法startup,提示"ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 "的解决方法
- JDBC连接SQLServer时出现错误Error establishing socket.的解决方法[端口问题引起]
- oracle错误:ORA-12514的解决方法
- RMAN 下执行startup 命令出现"ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务" 错误
- JDBC连接Oracle数据库时出现的ORA-12505错误及解决办法
- ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的 SERVICE_NAME 错误的解决
- 连接远程ms sql server 2000企业版时出现错误:10061的解决方法
- RMAN 下执行startup 命令出现"ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务" 错误