处理方法:
1.在listener.ora中
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\win7-ruanj\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
)这个中间加
(SID_DESC =
(GLOBAL_DBNAME = myoracle)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(SID_NAME = myoracle)
)
如:SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\win7-ruanj\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = myoracle)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(SID_NAME = myoracle)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
)
添加后 重启 LISTENER监听。
在安装目录找到oracle\product\10.2.0\db_1\bin\LSNRCTL.EXE 以管理身份身份运行。 reload 重启监听器
在tnsnames.ora中要添加
MYORACLE =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = myoracle)
)
)
这样就ok了
在启动、关闭或者重启oracle监听器之前确保使用lsnrctl status命令检查oracle监听器的状态:
1、$lsnrctl
status:检查当前监听器的状态
2、$lsnrctl start [listener-name] 启动所有的监听器,可以指定名字来启动特定的监听器
3、$lsnrctl stop [listener-name]
关闭所有的监听器,可以指定名字来关闭特定的监听器
4、$lsnrctl reload
重启监听器,此命令可以代替lsnrctl stop,lsnrctl start
5、lsnrctl hep
可以显示所有可用的监听器命令