Enterprise Manager 无法连接到数据库实例。下面列出了组件的状态。(在线等)

时间:2022-02-05 08:29:21
Enterprise Manager 无法连接到数据库实例。下面列出了组件的状态。(在线等)
oracle 10g 10.2版本
RT无法连接到数据库实例。下面列出了组件的状态。一下是问题图片,我害怕贴不出来就给了个连接
http://www.itdaan.com/imgs/2/8/5/8/82/a1def9669ff5bed126d2bd87532cca41.jpe

15 个解决方案

#1


可能是你連接的實例名不對吧?你進入sqlplus
查找
select * from v$instance;
看看實例名是什麼?

#2


select instance_name from v$instance
instance_name 
orcl

#3


emoms.log
[HttpRequestHandler-28730188] ERROR eml.OMSHandshake processFailure.619 - OMSHandshake failed.(AGENT URL = http://127.0.0.1:3938/emd/main)(ERROR = INTERNAL_ERROR)
2008-12-12 10:58:53,453 [HttpRequestHandler-28497887] ERROR conn.ConnectionService verifyRepositoryEx.433 - Invalid Connection Pool. ERROR = Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
The Connection descriptor used by the client was:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))

#4


我今天刚遇到这个问题,已经被我解决了。
解决步骤:
1、以oracle用户登录,/opt/oracle/product/10.2.0/db_1/dbs目录下运行
fuser -u lkORCL
fuser -k lkORCL
fuser -u lkORCL
2、重新启动数据库和监听
3、重新启动EM就好了


如果还有问题,可以联系我,MSN:leesurfa@hotmail.com

#5


listener.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
  )

tnsnames.ora

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

是不是sid这有问题。PLSExtProc这个东西我没设置过啊~怎么会有的?

#6


不是这个的问题,这两个文件是不用改的。
这两个文件和我的是一样的 ,虽然你的是装在windows下的。

#7


貌似你的tnsnames.ora 
少了这一段:
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

#8


引用 4 楼 leesurfa 的回复:
我今天刚遇到这个问题,已经被我解决了。
解决步骤:
1、以oracle用户登录,/opt/oracle/product/10.2.0/db_1/dbs目录下运行
fuser -u lkORCL
fuser -k lkORCL
fuser -u lkORCL
2、重新启动数据库和监听
3、重新启动EM就好了


如果还有问题,可以联系我,MSN:leesurfa@hotmail.com

fuser是指什么啊?
oracle用户/系统用户?

#9


引用 7 楼 leesurfa 的回复:
貌似你的tnsnames.ora
少了这一段:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

不好意思~没贴全~这是全部的~
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = orcl)
      (PRESENTATION = RO)
    )
  )

#10


fuser 是一个命令,你只要按那个去操作了,就ok。

#11


那是unix命令吧 ~我这是windows
F:\oracle>cd product
F:\oracle\product>cd 10.2.0
F:\oracle\product\10.2.0>cd db_1
F:\oracle\product\10.2.0\db_1>cd dbs
F:\oracle\product\10.2.0\db_1\dbs>fuser -u lkorcl
'fuser' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
F:\oracle\product\10.2.0\db_1\dbs>fuser -u lkorcl
'fuser' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
F:\oracle\product\10.2.0\db_1\dbs>

#12


listener.ora 

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
  )


tnsnames.ora 

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = orcl)
      (PRESENTATION = RO)
    )
  )


emoms.log
[HttpRequestHandler-28730188] ERROR eml.OMSHandshake processFailure.619 - OMSHandshake failed.(AGENT URL = http://127.0.0.1:3938/emd/main)(ERROR = INTERNAL_ERROR)
2008-12-12 10:58:53,453 [HttpRequestHandler-28497887] ERROR conn.ConnectionService verifyRepositoryEx.433 - Invalid Connection Pool. ERROR = Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
The Connection descriptor used by the client was:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))

#13


简单的,先看看你的“控制面板”-》“服务”,启动类似 console的服务

#14


这些都打开了~

#15


connect sys/pwd as sysdba
试一下能否链接上你的数据库

#1


可能是你連接的實例名不對吧?你進入sqlplus
查找
select * from v$instance;
看看實例名是什麼?

#2


select instance_name from v$instance
instance_name 
orcl

#3


emoms.log
[HttpRequestHandler-28730188] ERROR eml.OMSHandshake processFailure.619 - OMSHandshake failed.(AGENT URL = http://127.0.0.1:3938/emd/main)(ERROR = INTERNAL_ERROR)
2008-12-12 10:58:53,453 [HttpRequestHandler-28497887] ERROR conn.ConnectionService verifyRepositoryEx.433 - Invalid Connection Pool. ERROR = Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
The Connection descriptor used by the client was:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))

#4


我今天刚遇到这个问题,已经被我解决了。
解决步骤:
1、以oracle用户登录,/opt/oracle/product/10.2.0/db_1/dbs目录下运行
fuser -u lkORCL
fuser -k lkORCL
fuser -u lkORCL
2、重新启动数据库和监听
3、重新启动EM就好了


如果还有问题,可以联系我,MSN:leesurfa@hotmail.com

#5


listener.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
  )

tnsnames.ora

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

是不是sid这有问题。PLSExtProc这个东西我没设置过啊~怎么会有的?

#6


不是这个的问题,这两个文件是不用改的。
这两个文件和我的是一样的 ,虽然你的是装在windows下的。

#7


貌似你的tnsnames.ora 
少了这一段:
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

#8


引用 4 楼 leesurfa 的回复:
我今天刚遇到这个问题,已经被我解决了。
解决步骤:
1、以oracle用户登录,/opt/oracle/product/10.2.0/db_1/dbs目录下运行
fuser -u lkORCL
fuser -k lkORCL
fuser -u lkORCL
2、重新启动数据库和监听
3、重新启动EM就好了


如果还有问题,可以联系我,MSN:leesurfa@hotmail.com

fuser是指什么啊?
oracle用户/系统用户?

#9


引用 7 楼 leesurfa 的回复:
貌似你的tnsnames.ora
少了这一段:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

不好意思~没贴全~这是全部的~
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = orcl)
      (PRESENTATION = RO)
    )
  )

#10


fuser 是一个命令,你只要按那个去操作了,就ok。

#11


那是unix命令吧 ~我这是windows
F:\oracle>cd product
F:\oracle\product>cd 10.2.0
F:\oracle\product\10.2.0>cd db_1
F:\oracle\product\10.2.0\db_1>cd dbs
F:\oracle\product\10.2.0\db_1\dbs>fuser -u lkorcl
'fuser' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
F:\oracle\product\10.2.0\db_1\dbs>fuser -u lkorcl
'fuser' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
F:\oracle\product\10.2.0\db_1\dbs>

#12


listener.ora 

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
  )


tnsnames.ora 

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = orcl)
      (PRESENTATION = RO)
    )
  )


emoms.log
[HttpRequestHandler-28730188] ERROR eml.OMSHandshake processFailure.619 - OMSHandshake failed.(AGENT URL = http://127.0.0.1:3938/emd/main)(ERROR = INTERNAL_ERROR)
2008-12-12 10:58:53,453 [HttpRequestHandler-28497887] ERROR conn.ConnectionService verifyRepositoryEx.433 - Invalid Connection Pool. ERROR = Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
The Connection descriptor used by the client was:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=orcl)))

#13


简单的,先看看你的“控制面板”-》“服务”,启动类似 console的服务

#14


这些都打开了~

#15


connect sys/pwd as sysdba
试一下能否链接上你的数据库