轉載?解決Oracle的EM登錄
(2011-03-13 20:53:39)
標簽:
雜談
這幾天解決了EM無法登錄的問題,順便也把j數據庫程序中常出現的ORA_12518錯誤解決了,有必要總結一下,我最初遇到的情況是這樣的:
1. 編寫java程序訪問oracle
數據庫時總是出現了ORA_12518錯誤:監聽程序無法分發客戶機連接。以為是監聽程序沒啟動,檢查lsnrctl
status,沒有發現異常。
2. web方式下訪問EM,輸入網址后,無法打開網頁。
解決步驟:
1. 先打開管理工具》服務,查看dbconsole有沒有啟動或者在cmd下使用emctl status
dbconsole查看,如果dbconsole沒有啟動的話,是無法在web方式下訪問em的。
2. 使用emctl start dbconsole命令啟動,出現了錯誤(orcle_sid not found),我使用emca
-x 命令進行刪除,然后使用emca -r
命令重新建立檔案資料庫。
3.
檔案資料庫在重建的時候要注意,這是個交互式命令,會提示你輸入數據庫名和服務名,這個服務名一定得輸入完整的服務名,帶域名的(我的是com.czmyhome.taylor),要保證輸入的服務名是和在sqlplus下show
parameter service_name命令返回值具有相同的名字。但是我當時沒有輸入完整的服務名。
4. 使用emctl start dbconsole 啟動,
然后在web下訪問em,這次打開了網頁,但是顯示的是數據庫處于沒有啟動的狀態,
點擊啟動按鈕后,要求輸入OS的用戶名、密碼及數據庫的用戶名及密碼,我輸入后,網頁顯示密碼錯誤。我確定自己輸入的密碼和用戶名正確,通過網上查找資料:在windows
下進入 管理工具》本地安全策略》本地策略》用戶指派權利下, 將OS用戶添加作為批處理作業登錄項。
5, 再次在WEB方式下訪問EM,再次輸入OS和數據庫的用戶名密碼,這次進入成功,但出現ORA_12514錯誤。
這個錯誤的根本原因就是剛才建立資料檔案庫的時候輸入的服務名不正確,怎么改呢?在
安裝目錄>/主機名_OracleSID/sysman/cofig路徑下找到emoms.properities文件,修改oracle.sysman.eml.mntr.emdRepConnectDescripton項的service_name為完整服務名。
6.
再次在WEB方式下訪問EM,再次輸入OS和數據庫的用戶名密碼,這次出現ORA_12518錯誤,暈暈!真是冤家路窄啊。通過在listener.ora文件中添加DIRECT_HANDOFF_TTC_LISTENER
= OFF 然后重新啟動dbconsole,再次在WEB方式下訪問EM,再次輸入OS和數據庫的用戶名密碼后,登錄成功。
7. 回來看看那個數據庫訪問程序,運行正常。
總結EM登錄的問題,有下面幾點比較重要:
1. 確保DBCONSOLE是已啟動的,監聽程序也是啟動的
2. 確保所使用的服務名是完整的服務名
3. 在listener.ora文件中添加DIRECT_HANDOFF_TTC_LISTENER = OFF,
絕大多數情況下ORA_12518錯誤就是缺少這句,網上也有很多人說是SGA分配問題、或是PROCESS個數、或是64位操作系統問題,但我碰到的情況并非如此。
分享:
喜歡
0
贈金筆
加載中,請稍候......
評論加載中,請稍候...
發評論
登錄名: 密碼: 找回密碼 注冊記住登錄狀態
昵???稱:
評論并轉載此博文
發評論
以上網友發言只代表其個人觀點,不代表新浪網的觀點或立場。