1. 程式人生 > >ORACLE 12C 安裝過程相關報錯及解決方案

ORACLE 12C 安裝過程相關報錯及解決方案

對於oracle 12c最新版的資料庫,在安裝建庫的過程中,我們會遇到很多的問題,在這裡我講我遇到的問題整理了一下,並且給出相應的解決方案。

1.ORA-12500: TNS: 監聽程式無法啟動專用伺服器程序

顧名思義,這類問題與相關的監聽服務有關

  • 先確保資料庫是否已經開啟,相關服務已經啟動
    sqlplus /nolog
    conn /as sysdba
    startup

  • 開啟cmd後執行:lsnrctl status

  • 可以檢查到相關的監聽器服務是否開啟,根據所在呼叫的資料庫來檢視,看使用的資料庫所需要的服務是否開啟,例如是sid:orcl的資料庫相關聯服務,如果在cmd檢查中沒有開啟可以通過工作管理員中服務列中查詢到相關的服務將其重啟開啟,oraclevsswrite—oracleservice—listener—oraclescheduler—,一般是其中的service和listener沒有啟動,將服務重啟之後可以解決。

  • 進行監聽器的重新配置,開啟net configuration assistant 對於已有的監聽器進行重新配置。 並開啟netmanager檢查使用者localhost埠1521等是否沒有異常。

2.ORA-12560:TNS:協議是配器錯誤

造成錯誤的問題的原因有三個:

  • 監聽服務沒有起起來。
    windows平臺個一如下操作:開始—程式—管理工具—服務,開啟服務面板,啟動oraclehome92TNSlistener服務。

  • database instance沒有起起來。
    windows平臺如下操作:開始—程式—管理工具—服務,開啟服務面板,啟動oracleserviceXXXX,XXXX就是你的database SID.

  • 登錄檔問題。
    regedit,然後進入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0將該環境變數ORACLE_SID設定為XXXX,XXXX就是你的database SID.或者右幾我的電腦,屬性–高階–環境變數—系統變數–新建,變數名=oracle_sid,變數值=XXXX,XXXX就是你的database SID.或者進入sqlplus前,在command line下輸set oracle_sid=XXXX,XXXX就是你的database SID.

3.端口占用問題

  • cmd執行netstat -ano|findstr 1521

  • cmd執行netstat -ano找到localaddress 中佔用的埠

查詢到正在執行的程序pid

  • taskkill /pid ** /f

  • 開啟服務面板,找到執行的pid程序將其結束

將程序結束,所佔用的埠將被釋放

4.ORA-12505 Listener refused the connection

  1. sid、使用者名稱等確保與建立的資料庫相匹配
  2. – 啟一下電腦,釋放被佔用的1521埠

    – 重啟後開啟Oracle Develpoer

    – 然後執行cmd,開啟命令提示符,輸入命令lsnrctl先執行stop,然後再start

    – 開啟資源管理器
    執行C:\oraclexe\app\oracle\product\10.2.0\server\BIN\tnslsnr.exe
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleXETNSListener
    ImagePath鍵值:C:\oraclexe\app\oracle\product\10.2.0\server\BIN\tnslsnr.exe

暫時整理了以上四種問題,一般情況下確保關聯監聽服務正常開啟,伺服器sid等配置無誤,都能測試成功連線。