之前在一台测试机上装了Grid Control,今天在这台机器上添加了一个监听, 用net manager 配置的,这也是推荐的配置方法,因为手工修改tnsnames.ora 文件容易出现问题。 这个文件比较敏感,多一个空格就会报错。 配置完后,测试成功,但sqlplus 里连的时候,不识别这个实例。报ORA-12154 错误:
ORA-12154: TNS: 无法解析指定的连接标识符
用tnsping 一下:
C:/Documents and Settings/user.HQ-TEXT>tnsping orcl_80
TNS Ping Utility for 32-bit Windows: Version 10.2.0.2.0 - Production on 06-7月 -2010 13:53:43
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的参数文件:
TNS-03505: 无法解析名称
上网google了一下,说是环境变量有问题。 看了一下,环境变量确实有点问题。 Oracle的path 是放在path最后的,网上的说法是将Oracle的path放到最前面。 就解决了。 这里要注意的地方,如果在界面上来修改环境变量,是需要重启电脑的。 这样太麻烦了。 直接在dos里修改,就不用重启了,这样也方便很多。
1. 在界面修改
我的电脑->属性->高级->环境变量,找到PATH,把里面的顺序改一下,顺便看一下ORACLE_HOME 这个变量,如果没有,就加上去。
这种修改方法需要重新启动电脑。
2. 在DOS下修改
C:/Documents and Settings/user.HQ-TEXT>echo %path%
C:/OracleHomes/agent10g/jlib;C:/OracleHomes/agent10g/bin;C:/OracleHomes/oms10g/b
in;C:/OracleHomes/oms10g/jlib;D:/oracle/product/10.2.0/db_1/bin;D:/oracle/ora92/
bin;C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System32/Wbem;C:/Program Files/Ope
nVPN/bin
C:/Documents and Settings/user.HQ-TEXT>set PATH=D:/oracle/product/10.2.0/db_1/bi
n;D:/oracle/ora92/bin;%SystemRoot%/system32;%SystemRoot%;%SystemRoot%/System32/W
bem;C:/OracleHomes/agent10g/jlib;C:/OracleHomes/agent10g/bin;C:/OracleHomes/oms1
0g/bin;C:/OracleHomes/oms10g/jlib;
C:/Documents and Settings/user.HQ-TEXT>echo %PATH%
D:/oracle/product/10.2.0/db_1/bin;D:/oracle/ora92/bin;C:/WINDOWS/system32;C:/WIN
DOWS;C:/WINDOWS/System32/Wbem;C:/OracleHomes/agent10g/jlib;C:/OracleHomes/agent1
0g/bin;C:/OracleHomes/oms10g/bin;C:/OracleHomes/oms10g/jlib;
C:/Documents and Settings/user.HQ-TEXT>tnsping orcl_80
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 06-7月 -
2010 14:00:07
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的参数文件:
已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 10.85.10.80)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))
OK (0 毫秒)
在DOS窗口修改后,我们可以检查“我的电脑”->“属性”->“高级”->“环境变量”中设置的 PATH 值,它也自动修改了。不用担心DOS窗口中的修改会影响环境变量的值,DOS窗口中的环境变量只是Windows环境变量的一个副本而已。但是对副本的修改却会引发Windows环境变量的刷新,这就达到了我们不用重启电脑的目的。
在此说明一下,首先要确认监听配置没有问题,如果说监听配置都有问题,在怎么修改变量也是不管用的。 关于监听的配置参考我的blog:
Oracle 数据库监听配置
http://www.cndba.cn/dave/article/1232
------------------------------------------------------------------------------
QQ: 492913789
Email: [email protected]
Blog: http://www.cndba.cn/dave
网上资源: http://tianlesoftware.download.csdn.net
相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
DBA1 群:62697716(满); DBA2 群:62697977
DBA3 群:63306533; 聊天 群:40132017