Oracle 學習筆記:Oracle10g監聽端口改變后DB Control無法使用的解決方法
Posted on 2009-02-03 23:22 logicgate 閱讀(883) 評論(0) 編輯 收藏修改前的listener.ora
?
SID_LIST_LISTENER =
? (SID_LIST =
??? (SID_DESC =
????? (SID_NAME = PLSExtProc)
????? (ORACLE_HOME = D:\oracle\product)
????? (PROGRAM = extproc)
??? )
? )
LISTENER =
? (DESCRIPTION_LIST =
??? (DESCRIPTION =
????? (ADDRESS = (PROTOCOL = TCP)(HOST = logicgate)(PORT = 1521))
??? )
??? (DESCRIPTION =
????? (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
??? )
? )
?
修改后的listener.ora
?
SID_LIST_LISTENER =
? (SID_LIST =
??? (SID_DESC =
????? (SID_NAME = PLSExtProc)
????? (ORACLE_HOME = D:\oracle\product)
????? (PROGRAM = extproc)
??? )
??? (SID_DESC =
????? (GLOBAL_DBNAME = epcit)
????? (ORACLE_HOME = d:\oracle\product)
????? (SID_NAME = epcit)
??? )
? )
LISTENER =
? (DESCRIPTION_LIST =
??? (DESCRIPTION =
????? (ADDRESS = (PROTOCOL = TCP)(HOST = logicgate)(PORT = 1523))
??? )
??? (DESCRIPTION =
????? (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
??? )
? )
?
監聽端口從1521變為1523。由于oracle實例的動態注冊只能在默認端口1521上運行,端口改變后我這里使用了靜態注冊。重新啟動監聽器:
?
D:\>lsnrctl stop
D:\>lsnrctl start
D:\>lsnrctl services
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=logicgate)(PORT=1523)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
? Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
??? Handler(s):
????? "DEDICATED" established:0 refused:0
???????? LOCAL SERVER
Service "epcit" has 1 instance(s).
? Instance "epcit", status UNKNOWN, has 1 handler(s) for this service...
??? Handler(s):
????? "DEDICATED" established:0 refused:0
???????? LOCAL SERVER
The command completed successfully
?
可以看到數據庫實例"epcit"已經成功注冊到監聽器的端口1523上面。改變監聽器端口后運行tnsping會出錯,但只要更改tnsnames.ora中對應的端口就可以了。
?
然后登陸database control, 出現如下錯誤:Enterprise Manager is not able to connect to the database instance. The state of the components are listed below。修改方法如下:
?
1。%oracle_home\%hostname%_epcit\sysman\config\emoms.properties 在這個文件里我們可以找到兩個和端口有關的設置
oracle.sysman.eml.mntr.emdRepPort=1521
oracle.sysman.eml.mntr.emdRepConnectDescriptor=(DESCRIPTION\=(ADDRESS_LIST\=(ADDRESS\=(PROTOCOL\=TCP)(HOST\=LOGICGATE)(PORT\=1521)))(CONNECT_DATA\=(SERVICE_NAME\=epcit)))
把舊的端口改為新的端口就ok。
?
2。%oracle_home\%hostname%_epcit\sysman\emd\targets.xml? 把所有舊的端口換成新的。
?
3。重啟database control,登陸oem,成功!
已有 0 人發表留言,猛擊->>這里<<-參與討論
JavaEye推薦